チュートリアル: XSLT プロファイラー
XSLT プロファイラーは、詳細な XSLT パフォーマンス レポートを作成することにより、XSLT コード内のパフォーマンス関連の問題を計測、評価、および特定できるようにします。XSLT プロファイラーには、XSL および XSLT のスタイル シートの最適化に役立つヒントが含まれています。最高のパフォーマンスが必要になる XSLT アプリケーションには、このツールが不可欠です。
必要条件
次のチュートリアルの手順には、Visual Studio 2010 と .NET Framework バージョン 4.0 が必要になります。XSLT プロファイラーは、プロファイリング ツールがインストールされた Microsoft Visual Studio Team System でのみ使用できます。
パフォーマンス レポートの作成
Visual Studio で XSLT ドキュメントを開きます。
XML メニューの [XSLT のプロファイル] オプションをクリックします。
入力 XML ドキュメントを指定します。XML ドキュメントをまだ開いていない場合は、ファイルを開くように求められます。
分析が始まり、エディター内のプログレス バーに進行状況が示されます。
XSLT 出力が出力ペインに表示されます。
パフォーマンス セッションが終了したら、パフォーマンス レポートを確認します。パフォーマンス レポートに保存されたデータから、XSLT のパフォーマンスを確認および分析できます。
使用できるすべてのビューの取得
[現在のビュー] ドロップダウン リストをクリックして、使用できるすべてのビューを取得します。
[現在のビュー] ドロップダウン リストの [概要ビュー] オプションを選択します。既定では、[概要ビュー] にパフォーマンス レポートが表示されます。このビューが、XSLT ドキュメントでパフォーマンス上の問題を確認する際の開始点となります。[概要ビュー] には、次のデータ ポイントが一覧表示されます。
[一番呼び出された関数]
[個別作業が一番多い関数]
[時間が一番かかった関数]
各データ ポイントには、既定で関数名、呼び出し回数 (絶対値)、および合計関数呼び出しに対して各関数が占める割合 (パーセント値) という 3 つの列があります。[概要ビュー] の各データ ポイントから、さらに詳細なビューに移動するには、関数のデータ ポイントを右クリックします。
[現在のビュー] ドロップダウン リストの [関数ビュー] オプションを選択します。[関数ビュー] には、プロファイリング中に呼び出された関数が一覧表示されます。データを並べ替えるには、列名をクリックします。既定で表示される列は次のとおりです。
[関数名]
[経過時間 (子を含む)]
[経過時間 (関数のみ)]
[アプリケーション時間 (子を含む)]
[アプリケーション時間 (関数のみ)]
[呼び出し数]
時間の列は、すべて絶対値と割合 (パーセント) で表示されます。(関数のみ) という用語は、ある関数の実行中に呼び出された他の関数の時間を含まない、関数のみの合計実行時間を指します。
(子を含む) という用語は、ある関数により呼び出された関数と、これらの関数により呼び出された他の関数の実行時間を含む、関数の合計実行時間を指します。
[呼び出し元/呼び出し先] ビューの選択
[現在のビュー] ドロップダウン リストの [呼び出し元/呼び出し先] ビューを選択します。
[呼び出し元/呼び出し先] ビューは、次の 3 つの部分で構成されます。
[(関数) を呼び出した関数]: 特定の関数を呼び出したすべての関数が、ビューの最上部に一覧表示されます。
[現在の関数]: 呼び出された特定の関数が、ビューの中央部に一覧表示されます。
[(関数) によって呼び出された関数]: 特定の関数によって呼び出されたすべての関数が、ビューの最下部に一覧表示されます。
SyncToNavigator という関数がビューの中央部に表示されている場合、SyncToNavigator を呼び出したすべての関数がビューの最上部に表示され、SyncToNavigator によって呼び出されたすべての関数がビューの最下部に表示されます。
ビューの中央部の関数を変更するには、ビューの他の 2 つの部分に一覧表示されている関数の 1 つをダブルクリックします。これにより、この変更を反映してビューが自動的に更新されます。
列名をクリックすると、データを並べ替えることもできます。
[呼び出しツリー] ビューの選択
[現在のビュー] ドロップダウン リストの [呼び出しツリー] ビューを選択します。このビューは、プログラム実行のツリー ビューです。
[呼び出しツリー] ビューには、ツリーのルートがプロセス名として表示されます。関数はツリーのノードです。このビューを使用すると、特定の呼び出しのトレースをドリル ダウンし、どのトレースがパフォーマンスに最も大きな影響を与えているかを分析できます。ビューは、デバッグ中に使用できる [呼び出し履歴] ビューと似ています。[呼び出しツリー] ビューには、[関数ビュー] の列に加えて、[モジュール名] を表示する列があります。
[現在のビュー] ドロップダウン リストの [マーク] を選択します。
XSLT プロファイラーでは、コメントに関連付けられているデータ コレクション ストリームにこれらのマークが表示されます。マークは、カウンターのあるコードの場所です。XSLT プロファイラーに XSLT パフォーマンス カウンターの収集を指示すると、これらのマークが実行されるたびにカウンターが収集されます。このデータは、[マーク ID]、[マーク名] ([プログラムの開始]、[プログラムの終了])、および [タイム スタンプ] を含むテーブルに表示されます。マークが集計されることはなく、パフォーマンス レポートの [マーク] ビューに時系列順に表示されます。
[現在のビュー] のモジュールの選択
[現在のビュー] ドロップダウン リストの [モジュール] を選択します。
モジュール ビューは、すべての関数をモジュール レベルで集計した単純なリストです。モジュール名を展開してモジュールのパフォーマンス データのビューを表示したり、モジュール名を折りたたんでこれらのビューを閉じたりします。データを並べ替えるには、列名をクリックします。既定では、[経過時間 (子を含む)]、[経過時間 (関数のみ)]、[アプリケーション時間 (子を含む)]、[アプリケーション時間 (関数のみ)]、および [呼び出し数] の絶対値と割合 (パーセント) が表示されます。
[現在のビュー] ドロップダウン リストの [プロセス] を選択します。
プロセス ビューには、[プロセス ID]、[プロセス名]、[開始時刻]、および [終了時刻] のテーブルが表示されます。データを並べ替えるには、列名をクリックします。