各種のプロファイル方法を使用したコマンド ラインからのパフォーマンス データの収集

Visual Studio 2017 RC の最新のドキュメントの詳細については、Visual Studio 2017 RC ドキュメントをご参照ください。

使用する Visual Studio プロファイリング ツールのコマンド ライン ツールおよびオプションは、プロファイル対象のアプリケーションの種類、使用するプロファイル方法、ターゲット アプリケーションが、ネイティブ コードと .NET Framework コードのどちらで記述されているかなどの要因によって決まります。

ここでは、コマンド ラインの手順について、使用するプロファイル方法ごとに説明します。

このトピックの内容

サンプリング メソッドを使用してパフォーマンス統計情報を収集する

インストルメンテーション メソッドを使用して詳細なタイミング データを収集する

.NET メモリ メソッドを使用してメモリの割り当てとオブジェクトの有効期間のデータを収集する

同時実行メソッドを使用してリソースの競合およびスレッド アクティビティのデータを収集する

プロファイリングの実行に階層の相互作用データを追加する

サンプリング メソッドを使用してパフォーマンス統計情報を収集する

プロファイリング ツールのサンプリング メソッドでは、プロファイリングの実行中、指定した間隔でパフォーマンス データを収集します。 サンプリング データは、CPU 制約によるパフォーマンス上の問題を把握するのに役立ち、アプリケーションのパフォーマンスを調べるための最初の方法として適しています。

プロファイラーとアプリケーションを同時に開始することも、実行中のアプリケーションのインスタンスにプロファイラーをアタッチすることもできます。

タスク ターゲット アプリケーションの種類
アプリケーションを起動する - スタンドアロン アプリケーション
実行中のプロセスにアタッチする - スタンドアロンの .NET Framework アプリケーション
- スタンドアロンのネイティブ アプリケーション
- ASP.NET Web アプリケーション
- .NET サービス
- ネイティブ サービス

インストルメンテーション メソッドを使用して詳細なタイミング データを収集する

プロファイリング ツールのインストルメンテーション メソッドでは、パフォーマンス情報を記録するためのソフトウェア プローブを含むアプリケーション バイナリのコピーからパフォーマンス データを収集します。 インストルメント化された各関数の開始時と終了時、およびインストルメント化された関数から他の関数を呼び出すたびに、インストルメンテーション データが収集されます。 インストルメンテーション メソッドは、ディスクの使用率などの I\/O の問題に関連するパフォーマンス上の問題を検出するのに役立ちます。

VInstr.exe ツールを使用すると、インストルメント化されたバイナリを作成できます。 プロファイラーを初期化すると、ターゲット アプリケーションの実行時にインストルメント化されたバイナリからデータが自動的に収集されます。

ターゲット アプリケーションの種類

.NET メモリ メソッドを使用してメモリの割り当てとオブジェクトの有効期間のデータを収集する

プロファイリング ツールの .NET メモリ メソッドを使用すると、.NET Framework メモリの割り当ておよび .NET Framework のオブジェクトの有効期間に関する情報を収集できます。

プロファイラーを使用してターゲット アプリケーションを開始できるほか、実行中のアプリケーションのインスタンスにプロファイラーをアタッチすることもできます。.NET Framework メモリ データと共に詳細なタイミング情報を収集するためのインストルメント化された形式のアプリケーションを作成することもできます。

タスク ターゲット アプリケーションの種類
アプリケーションを起動する - スタンドアロンの .NET Framework アプリケーション
実行中のプロセスにアタッチする - スタンドアロンの .NET Framework アプリケーション
- ASP.NET Web アプリケーション
- .NET サービス
モジュールをインストルメント化する - スタンドアロンの .NET Framework コンポーネント
- 静的にコンパイルされた ASP.NET Web アプリケーション
- 動的にコンパイルされた ASP.NET Web アプリケーション
- .NET サービス

同時実行メソッドを使用してリソースの競合およびスレッド アクティビティのデータを収集する

プロファイリング ツールの同時実行メソッドを使用すると、マルチスレッド アプリケーションのリソースの競合およびスレッドとプロセスのアクティビティ データを収集できます。

プロファイラーを使用してアプリケーションを開始することも、実行中のアプリケーションのインスタンスにプロファイラーをアタッチすることもできます。

タスク ターゲット アプリケーションの種類
アプリケーションを起動する - スタンドアロンの .NET Framework アプリケーション
- スタンドアロンのネイティブ アプリケーション
実行中のプロセスにアタッチする - スタンドアロンの .NET Framework アプリケーション
- スタンドアロンのネイティブ アプリケーション
- ASP.NET Web アプリケーション
- .NET サービス
- ネイティブ サービス

プロファイリングの実行に階層の相互作用データを追加する

プロファイリングの実行に階層の相互作用データを追加するには、コマンド ライン プロファイリング ツールによる特定の手順が必要です。 「階層相互作用データの収集」を参照してください。

参照

スタンドアロン アプリケーションのプロファイリング
ASP.NET Web アプリケーションのプロファイリング
プロファイリング (サービスの)