インテル® VTune™ プロファイラー・ユーザーガイド
インテル® VTune™ プロファイラーは、ユーザーが開発したシリアルおよびマルチスレッド化されたアプリケーション向けのパフォーマンス解析ツールです。インテル® VTune™ プロファイラーは、アルゴリズムの選択と利用可能なハードウェア・リソースからアプリケーションがどのように恩恵を得られるか特定するのを支援します。
インテル® VTune™ Amplifier は、インテル® oneAPI ベース・ツールキット向けのバージョンからインテル® VTune™ プロファイラーに名称が変更されました。インテル® VTune™ プロファイラーは、スタンドアロン・バージョンとインテル® Parallel Studio XE またはインテル® System Studio に同梱されたバージョンが提供されます。
インテル® VTune™ プロファイラーは次の場所を特定できます。
アプリケーションやシステム全体で最も時間を消費する (ホットな) 関数
利用可能なプロセッサー時間を効率良く利用していないコード領域
シーケンシャルなパフォーマンスとスレッド化されたパフォーマンスを最適化するコード領域の候補
アプリケーションのパフォーマンスに影響する同期オブジェクト
アプリケーションが時間を費やしている入出力操作、コード内の場所、およびその理由
アプリケーションが CPU または GPU に依存するかどうか、およびコードを GPU に効率良くオフロードできるか
異なる同期メソッド、異なるスレッド数、または異なるアルゴリズムのパフォーマンスの影響
スレッドのアクティビティーと移行
データのフォルスシェア、キャッシュミス、分岐予測ミスなどコード中のハードウェアに関連する問題
インテル® VTune™ プロファイラーは、Windows*、macOS*、および Linux* 上にインストールでき、ローカルとリモート・ターゲット・システムの解析に使用できます。インテル® VTune™ プロファイラーをウェブサーバーとして使用することもできます。これは、マルチユーザー環境に最適化ソリューションです。
インテル® VTune™ プロファイラーは、Microsoft* Visual Studio* または Eclipse* などの IDE に統合するか、スタンドアロン GUI クライアントとして利用できます。
macOS* では、プロジェクトを設定し、リモートデータ収集を行い、収集した結果のデータをホスト上で解析できます。ローカル macOS* でのデータ収集はサポートされていません。サポートされるシステムでは、コマンドライン・インターフェイス (vtune) を使用してデータを収集し、回帰テストを実行できます。
次の表は、インテル® VTune™ プロファイラーを使用するホストおよびリモート・ターゲット・プラットフォームごとの重要な解析タイプの可用性をまとめたものです。
解析 |
Windows* ターゲット |
Linux* ターゲット |
Android* ターゲット |
FreeBSD* ターゲット |
---|---|---|---|---|
+ |
+ |
+ |
||
+ |
+ |
|||
+ |
+ |
+ |
+ |
|
+ |
||||
IDE (Eclipse*/Visual Studio*) |
+ |
+ |
||
+ |
+ |
|||
+ |
+ |
+ |
+ |
|
+ |
+ |
|||
+ |
||||
I/O 解析 (DPDK と SPDK アプリケーションを含む) |
+¹ |
+ |
||
+ |
+ |
+ |
||
+ |
+ |
+ |
+ |
|
+ |
+² |
+ |
||
+¹ |
+¹ |
|||
+ |
+² |
|||
+² |
||||
+ |
+ |
+ |
||
+ |
||||
+ |
+ |
|||
+³ |
+³ |
|||
+ |
+ |
|||
+ |
+ |
|||
+ |
||||
+ |
+ |
|||
+ |
||||
電力解析 (可視化のみ) |
+ |
+ |
+ |
1プレビュー機能。2インテル® HD グラフィックスおよびインテル® Iris® グラフィックスのみ。3EBS 解析のみ。
インテル® VTune™ プロファイラーは、解析と結果の解釈を容易にする機能を提供します。
トップダウン・ツリー解析: アプリケーションにおけるパフォーマンス上重要な実行フローを理解するために使用します。
タイムライン解析: スレッドのアクティビティーとスレッド間の移行を解析します。
ITT API 解析: ITT API を使用してコード中の重要な移行ポイントをマークして、フレームあたりのパフォーマンス、タスクなどを解析します。
アーキテクチャー・ダイアグラム: GPU アーキテクチャー・ブロックごとの GPU ハードウェア・メトリックを調査することで、GPU OpenCL* アプリケーションを解析します。
ソース解析: 問題の原因を調査するため、ソース行ごとにパフォーマンス・データを表示します。
比較解析: 最適化後のパフォーマンスの変化を理解するため、最適化前と後のアプリケーションのパフォーマンス結果を比較します。
ポーズしてデータ収集を開始モード: コマンドバーにある [ポーズして開始] ボタンをクリックして、パフォーマンス・データを収集せずにアプリケーションを開始し、[再開] ボタンをクリックしてデータ収集を始めます。
グループ化: グリッドビューで異なる粒度でデータをグループ化して、異なる視点から問題を解析します。
ビューポイント: 解析結果向けに利用可能な事前設定されているウィンドウとペインを選択します。これは、特定の問題に注目するのに役立ちます。
"ホットキー" による解析の開始と停止: バッチファイルを使用して開始と停止のホットキーを作成し、特定の解析を行います。
インテル® VTune™ プロファイラーは、アセンブリー・レベルの命令に関する特定の情報を利用するため、プログラム (ターゲット) にインテル® アーキテクチャー以外の命令が含まれていると、解析が正しく動作しないことがあります。この場合、インテル命令のみを含むターゲット実行ファイルで解析を実行します。インテル® VTune™ プロファイラーの解析が完了すると、インテル以外のアーキテクチャー命令を生成する最適化コンパイラー・オプションを使用できます。