ホットスポット解析は、アプリケーションのフローを理解し、多くの実行時間 (ホットスポット) を費やすコード領域を特定するのに役立ちます。特定のプロセス、スレッドまたはモジュールで収集された多数のサンプルは、高いプロセッサー利用率と潜在的なパフォーマンスのボトルネックを意味します。一部のホットスポットは排除できますが、アプリケーション機能の根本にあるホットスポットは排除することはできません。
インテル® VTune™ プロファイラーは、関数で費やされた時間順にアプリケーションの関数のリストを作成します。また、これらの関数のコールスタックも取得するように設定して、ホットな関数がどのように呼び出されているかを確認できます。
コマンドラインからデータを表示するには、-knob オプションを使用します。
sampling-mode=sw- プロファイルで使用されるユーザーモード・サンプリング (デフォルト):
sampling-mode=hw- プロファイルで使用されるハードウェア・イベントベース・サンプリング:
vtune -collect hotspots -knob <knobName=knobValue> [--] <target>
Knob : sampling-mode、enable-stack-collection、sampling-interval、enable-characterization-insights
ホットスポット解析で利用可能な knob (設定オプション) に関する最新情報は、vtune -help collect hotspots で取得できます。
この例は、Linux* の myApplication のユーザーモード・サンプリング・モードで、ホットスポット解析を実行する方法を示します。
vtune -collect hotspots -knob sampling-mode=sw -- /home/test/myApplication
この例は、Windows* の myApplication のハードウェア・イベントベース・サンプリング・モードで、ホットスポット解析を実行する方法を示します。
vtune -collect hotspots -knob sampling-mode=hw -knob sampling-interval=1 -- C:\test\myApplication.exe
インテル® VTune™ Amplifier 2019 から、advanced-hotspots 解析はハードウェア・イベントベース・サンプリング・モードに変更されました。
データ収集が完了したら、結果を表示するため次のいずれかの操作を行います。
コマンドラインからデータを表示するには、-report アクションを使用します。
-report-output アクションを使用して、レポートを .txt または .csv ファイルに書き込みます。
インテル® VTune™ プロファイラーのグラフィック・インターフェイスで、収集した結果データ (*.vtune) を開きます。