ワークフローの位置を確認hotspot 解析結果の解釈

hotspot 解析は、アプリケーション中で時間を費やしている場所を示します。次のビューポイントを使用して、収集した hotspot データを解釈します。

hotspot 解析で提供されるパフォーマンス・データを解釈するには、次の操作を行います。

  1. パフォーマンス・ベースラインを定義します。

    最初に、[Summary (サマリー)] ウィンドウでアプリケーションの実行に関する全般的な情報を確認します。経過時間 (アプリケーションの開始から終了までの実行時間) は、アプリケーション CPU 時間 (アプリケーションで実行されたすべてのスレッドの CPU 時間の合計で、待機時間は除く) とは異なります。

    最適化前後の比較のベースラインとして、[Summary (サマリー)] ウィンドウの経過時間を使用します。アプリケーションのチューニングでスレッドを追加すると、経過時間が減り、CPU 時間が増えることがある点に注意してください。

  2. 最も時間を費やしている関数を特定します。

    基本的なパフォーマンス・データは、[Bottom-up (ボトムアップ)] / [Top-down Tree (トップダウン・ツリー)] ペインで確認できます。このデータを使用して最も時間を費やしている関数を特定します。

    デフォルトでは、[Bottom-up (ボトムアップ)] ペインのデータは降順にソートされ、最も時間のかかっている関数が最初に表示されます。CPU 時間が最も長い関数に注目します。これが最適化の候補となります。

    [Hotspots by CPU Usage (CPU 使用率別 hotspot)] ビューポイントに切り替えると、CPU 時間が効率良く使用されたかどうかの詳細が得られます。

    Poor (低) の値が最も大きなプログラムユニットをチューニングします。このプログラムユニットでは、実行時に CPU 時間が最大限に使用されていません。CPU 使用率が Poor (低) および Over (高) のものを短くし、Ideal (理想) (緑 ) または OK (許容範囲) (オレンジ ) になるように最適化します。

  3. アルゴリズムの問題を特定します。

    アプリケーションの呼び出しシーケンスに問題があることがあります。この場合、アプリケーションで関数を呼び出す方法を変更することで、パフォーマンスを向上できます。問題の可能性のある箇所を調べるには、次のような方法があります。

    [Top-down Tree (トップダウン・ツリー)] ペインを開いて、予期しない合計時間のクリティカル・セクションがあるかどうか確認します。

    [Call Stack (コールスタック)] ペインでは、[Bottom-up (ボトムアップ)] / [Top-down Tree (トップダウン・ツリー)] ペインで選択したプログラムユニットのスタックのうち最も割合の高いものが表示されます。ナビゲーション・ボタン を使用して、選択したプログラムユニットを呼び出したスタックの表示を切り替えることができます。バーは、選択したプログラムユニットで費やされた合計時間に対する現在表示されているスタックの割合を示しています。

    [Call Stack (コールスタック)] ペインのドロップダウン・リストを使用して、異なるスタックのデータを表示することもできます。

  4. ソースを検証します。

    最も時間を費やしている関数をダブルクリックして、[Source/Assembly (ソース/アセンブリー)] ウィンドウでコードを表示します。インテル(R) VTune(TM) Amplifier XE から直接コードエディターを開き、シリアルコードを編集 (hotspot 関数への呼び出し回数を最小限にするなど) できます。

  5. その他の解析タイプを試してみます。

    • コンカレンシー解析では、アプリケーションが利用可能なプロセッサー・コアを効率良く使用していない場所を特定できます。
    • 比較解析では、最適化によるパフォーマンスの向上を評価できます。
    • 高度なハードウェア・レベル解析では、アプリケーションのパフォーマンスに影響を与えているハードウェア問題を特定できます。

関連項目


このヘルプトピックについてのフィードバックを送信
 
インテル(R) ソフトウェア製品ドキュメント・ライブラリー

© 2010 Intel Corporation. 無断での引用、転載を禁じます。