hotspot 解析は、アプリケーションのフローを確認して、実行に長い時間がかかっているコード領域 (hotspot) を特定します。特定のプロセス、スレッド、モジュールで大量のサンプルが収集された場合は、CPU 利用率が高いか、または潜在的なパフォーマンス・ボトルネックがあることを意味します。hotspot には排除できるものもあれば、アプリケーションの機能性に不可欠で排除できないものもあります。
インテル(R) VTune(TM) Amplifier XE は、関数で費やされた時間順にアプリケーションの関数のリストを作成します。各関数のコールスタックも表示されるので、ホットな関数がどのように呼び出されているか確認できます。
インテル(R) VTune (TM) Amplifier XE は、オーバーヘッドの低い (約 5%) ユーザーモード・サンプリング/トレース収集を使用するため、アプリケーションの実行速度を大幅に低下させることなく、必要な情報を取得できます。
hotspot 解析中、インテル(R) VTune (TM) Amplifier XE のデータコレクターは、OS タイマーを使用してアプリケーションをプロファイルします。データコレクターは、プロセスに割り込み、すべてのアクティブな命令アドレスのサンプルを収集し、各サンプルで呼び出しシーケンス (スタック) を再現します。インテル(R) VTune (TM) Amplifier XE は、サンプリング結果の命令ポインター (IP) と呼び出しシーケンス をデータ収集ファイルに保存して、[結果] タブで収集したデータを解析、表示します。そして、統計的に収集された IP サンプルと呼び出しシーケンスを基に、トップダウン・ツリー (コールツリー) を表示します。 このデータは、統計的に重要なコード領域の制御フローを理解するのに役立ちます。
コレクターはシステム全体にわたるデータは収集せず、アプリケーションのデータのみ収集します。システムのパフォーマンスを解析するには、ライト hotspot 解析を実行します。
hotspot 解析結果は、次のビューポイントで表示できます。
ビューポイント | 説明 |
---|---|
hotspot | 多くの CPU 時間を使用しているコード領域 (hotspots) を特定するのに役立ちます。 |
Hotspots by CPU Usage (CPU 使用率別 hotspot) | 多くの CPU 時間を使用しているコード領域 (hotspots) を特定するのに役立ちます。CPU 時間は CPU 使用率の状態 (idle、poor、fair、good) に分割されます。 |
それぞれのビューポイントには、次のウィンドウ/ペインがあります。
hotspot からソースコードを表示します。hotspot の原因となるソースコードを表示して、ボトルネックを取り除き、アプリケーションのパフォーマンスが向上するよう修正します。
hotspot 解析によって提供される情報は、シリアル・アプリケーションだけでなく、並列アプリケーションのシリアル領域をチューニングするのにも役立ちます。hotspots 解析データを利用することで、アプリケーションが何を行っているか把握し、チューニングが必要なコードを特定することができます。マルチコアシステムで実行している並列アプリケーションについては、追加の解析 (コンカレンシー解析およびロックと待機の解析) が必要です。
© 2010 Intel Corporation. 無断での引用、転載を禁じます。