更新 : 2007 年 11 月
このチュートリアルでは、コマンド ライン ツールを使用したアプリケーションのプロファイリング方法と、パフォーマンス上の問題をインストルメンテーションによって特定する方法について説明します。
このチュートリアルでは、マネージ アプリケーションのプロファイリングを行う方法と、インストルメンテーションを使用してアプリケーションのパフォーマンス上の問題を特定および識別する方法の各手順を説明します。必要な手順は次のとおりです。
インストルメンテーション方式を使用してアプリケーションのプロファイリングを行います。
インストルメントしたプロファイリング結果を分析して、パフォーマンス上の問題を特定および修正します。
前提条件
Visual Studio Team System
C# についての中級レベルの知識
コマンド ライン ツールの操作についての中級レベルの知識
プロファイリングによって得られた情報を操作するには、デバッグ シンボル情報を使用できるようにしておくことをお勧めします。
インストルメンテーション方式を使用したコマンド ライン プロファイリング
インストルメンテーションとは、1 つのプロファイリング方式です。インストルメントされるモジュール内の関数に制御が渡されるときと、関数から制御が返されるときのタイミング情報を収集するプローブ関数が、プロファイリングされるバイナリの特別に構築されたバージョンに含まれています。このプロファイリング方式は、サンプリングよりも深くプログラムに入り込むので、オーバーヘッドが大きくなります。インストルメントされたバイナリはデバッグまたはリリース バイナリよりも大きく、配置向けではありません。
![]() |
---|
インストルメントされたバイナリを顧客に配布することのないように注意してください。インストルメントされたバイナリには、さまざまなリスクが存在します。セキュリティ上のリスクはもちろん、バイナリに含まれる情報を基に、アプリケーションのリバース エンジニアリングを容易に行うことができてしまうという問題もあります。 |
インストルメンテーション方式を使用してアプリケーションのプロファイリングを行うには
コマンド ウィンドウを開き、サンプリング コマンド ライン ツールのあるディレクトリに移動します。既定のディレクトリは、<drive:>\Program Files\Microsoft Visual Studio 9\Team Tools\Performance Tools\ です。
マネージ アプリケーションのプロファイリングを行う場合は、「VsPerfCLREnv /traceon」のようにコマンドを入力して、適切な環境変数を設定します。
プロファイリングを行うアプリケーションをインストルメントするには、次のコマンドを入力します。
VSInstr PeopleTrax.exe
注意 既定では、インストルメントされていない元のファイルのバックアップが保存されます。バックアップ ファイルの名前には、.orig という拡張子が付きます。たとえば、元のバージョンの "MyApp.exe" は、"MyApp.exe.orig" として保存されます。
プロファイラを起動するには、「VsPerfCmd /start:trace /output:Report.vsp」というコマンドを入力します。
モニタ プロセスをトレース モードで開始すると、インストルメントされたバージョンの PeopleTrax.exe プロセスによってデータが収集されます。
PeopleTrax アプリケーション ウィンドウが表示されます。
[Get People] をクリックします。
PeopleTrax データ グリッドにデータが設定されます。
[データのエクスポート] をクリックします。
メモ帳が開かれ、PeopleTrax アプリケーションの人名リストを含む新しいファイルが表示されます。
メモ帳を閉じ、PeopleTrax アプリケーションを閉じます。
マネージ アプリケーションのプロファイリングを行う場合は、「VSPerfCLREnv /off」のようにコマンドを入力し、環境変数をリセットします。
次のいずれかの方法で結果を分析します。
未加工の .vsp ファイルを Visual Studio IDE で調査します。
または
コマンド ライン ツール VSPerfReport.exe を使用して、より詳細なレポートを生成します。Visual Studio IDE の外部で使用するためのレポートを生成するには、「VSPerfReport <dir>PeopleTraxReport.vsp /output:<dir> /summary:all」のようにコマンドを入力します。
次の手順
プロファイル データのレポートをコマンド ラインから作成する方法については、以下のチュートリアルも参照してください。
方法 : コマンド ライン ツールを使用してサンプリング データを収集する
方法 : コマンド ライン ツールを使用してインストルメンテーション データを収集する