![]() |
高度なパフォーマンス・プロファイラー
|
- バージョン 2020 より、製品名が「インテル® VTune™ Amplifier」から「インテル® VTune™ プロファイラー」に変更になりました。
- このページでは、https://software.intel.com/en-us/intel-vtune-amplifier-xe の内容をもとに、製品に関連する記事や参考資料へのリンクをまとめています。
- 本製品は単体販売しておりません。インテル® oneAPI ツールキットに同梱されています。
- 関連記事
- リソース
- FAQ
関連記事
関連記事一覧
- インテル® VTune™ プロファイラー 2025.4.0 でレガシー CPU サポート終了
- インテル® VTune™ プロファイラー・リリースノートと新機能
- インテル® Core™ Ultra プロセッサー上でインテル® VTune™ プロファイラーを使用して NPU 依存の AI PC アプリケーションを高速化
- 人工知能 (AI) アプリケーションのプロファイル
- インテル® VTune™ プロファイラー・システム要件
- インテル® VTune™ プロファイラーでアプリケーション・パフォーマンスを解析、チューニング、最大化する 8 つの方法
- パフォーマンス・モニタリング・ユニット (PMU) 対応の Google Cloud* 仮想マシンでのアプリケーションのプロファイル
- インテル® Xeon® プロセッサーのインテル® データ・ダイレクト I/O テクノロジーに関連するアンコア・パフォーマンス・モニタリング・イベントの解析
- インテル® Core™ Ultra プロセッサー 200V シリーズでの大規模言語モデルのプロファイル
- インテル® VTune™ プロファイラー・パフォーマンス解析クックブック
- GPU 上で実行する SYCL* アプリケーションのプロファイル
- データ並列 Python* アプリケーションのプロファイル
- OpenVINO™ アプリケーションのプロファイル
- シングルノードの Kubernetes* アプリケーションのプロファイル
- ウェブブラウザーで解析結果を表示
- ハイブリッド CPU プラットフォーム向けの Windows* アプリケーションのプロファイル
- インテル® Xeon® CPU マックス・シリーズの高帯域幅メモリー・パフォーマンスのプロファイル
- パフォーマンス解析用のカスタムデータ収集
- 釜山大学がインテル® VTune™ プロファイラーを使用して計算流体力学のパフォーマンスを大幅に向上
- インテル® VTune™ プロファイラーを使用してインテル® マックス・シリーズ製品ファミリー上でワークロードを最適化
- 高帯域幅メモリーを搭載したインテル・プロセッサーのパフォーマンス最適化
- リモートユーザーとして Java* アプリケーションをプロファイルする
- Unreal Engine* でビルドしたゲームのプロファイル
- Unity* でビルドしたゲームのプロファイル
- コマンドライン・インターフェイスを使用して GPU 上で実行する SYCL* アプリケーションのパフォーマンスを解析
- FPGA 上での SYCL* アプリケーションのプロファイル
- 複数グラフィックス・デバイスでインテル® VTune™ プロファイラーを使用する際の注意点
- HPC クラスターでインテル® VTune™ プロファイラー・サーバーを使用する
- マルチプロセッサー・システムにおける NUMA のパフォーマンスへの影響を測定する
- フレームグラフを使用して C++ アプリケーションの hotspot の観測性を向上する
- ハイブリッド CPU 解析
- OpenMP* を使用した効率良いヘテロジニアス並列プログラミング
- フレームグラフを使用してホットなコードパスを解析する
- インテル® oneAPI ベース・ツールキットを使用した GPU アプリケーションの最適化
- CatBoost マシンラーニング・ライブラリーが 1.47 倍のスピードアップを達成
- インテル® GPU 向けのソフトウェア最適化
- データ並列 C++ のリダクション操作のパフォーマンスを解析する
- ページフォルト
- インテル® VTune™ プロファイラー・サーバーと Visual Studio* Code およびインテル® DevCloud for oneAPI の併用
- セグメント化されたキャッシュ環境におけるキャッシュ関連のレイテンシー問題
- 最新の命令セットを使用して最適化されたポータブルなバイナリーをコンパイルする
- DPDK イベント・デバイス・プロファイル
- GPU 上で実行する OpenMP* オフロード・アプリケーションのプロファイル
- プロキシーサーバーを介したリモートターゲットのプロファイル
- インテル® データ・ダイレクト I/O テクノロジーの効果的な利用
- パフォーマンス異常を見つけるアプリケーションのプロファイル
- インテル® VTune™ プロファイラーを使用してインテル® GPU 向けにアプリケーションを最適化
- PMDK アプリケーション・オーバーヘッド
- インテル® TBB アプリケーションのスケジュール・オーバーヘッド
- 低いプロセッサー・コア利用率: OpenMP* シリアル時間
- OpenMP* インバランスとスケジュール・オーバーヘッド
- OS スレッド・マイグレーション
- 非効率な TCP/IP 同期
- 非効率な同期
- 命令キャッシュミス
- 低いポート使用率
- 頻繁な DRAM アクセス
- フォルス・シェアリング
- Linux*、Android*、および QNX* のシステムブート時のプロファイル
- Apptainer* コンテナーでのプロファイル
- Docker* コンテナでのプロファイル
- MPI アプリケーションのプロファイル
- インテルのサンプリング・ドライバーを使用しないハードウェア・プロファイル
- ハードウェアベースの hotspot 解析向けに Hyper-V* 仮想マシンを設定する
- Amazon Web Services* (AWS*) EC2* インスタンス上のアプリケーションのプロファイル
- .NET Core アプリケーションのプロファイル
- CPU と FPGA (インテル® Arria® 10 GX) の相互作用を解析する
- Node.js* の JavaScript* コードのプロファイル
- DPDK アプリケーションの PCIe*トラフィック
- DPDK アプリケーションのコア使用率
- OpenMP* コード解析
- トップダウン・マイクロアーキテクチャー解析法
- インテル® VTune™ プロファイラー導入ガイド
- ITT API オープンソース・バージョン
- インテル® VTune™ プロファイラーの新機能
- AWS* のインスタンスで利用可能なインテル® VTune™ プロファイラーの機能
- ベクトル化を利用したデータ・アナリティクス向け LLVM コード生成の最適化
- 実験による DirectX* マルチスレッド・レンダリング・パフォーマンスの理解
- パフォーマンス・スナップショット
- GitLab* CI でパフォーマンスをプロファイルする
- 『Imperator: Rome』の最適化されたグラデーション境界レンダリング
- インテル® VTune™ Amplifier の出力からビジュアル・コールグラフを作成する
- インテル® VTune™ プロファイラー 日本語版 (iSUS 翻訳版) のお申し込み
- インテル® VTune™ プロファイラー 2020 の新機能: スロットリング解析の活用
- マルチスレッド開発ガイド: 4.5 インテル® VTune™ Amplifier を使用したスレッド・インバランスの解消
- マルチスレッド開発ガイド: 3.4 スレッド間のフォルス・シェアリングの回避と特定
- マルチスレッド開発ガイド: 3.3 マルチスレッド・アプリケーションのメモリー帯域飽和を検出する
- マルチスレッド開発ガイド: 3.1 スレッド間のヒープ競合の回避
- マルチスレッド開発ガイド: 1.3 粒度と並列パフォーマンス
- アプリケーション・パフォーマンス・スナップショット入門 (Linux* 版)
- Elastic Games が AAA の Triple-I ゲームを制作
- インテルにより『ゴーストバスターズ: ザ・ビデオゲーム リマスタード』でプロトンパックがパワーアップ
- 0 A.D. のフレームレートのボトルネックを特定
- マルチプロセッサーでフォルス・シェアリングを検出し軽減する
- インテル® VTune™ Amplifier のプラットフォーム・プロファイラーを使用したワークロードとシステムの特徴付け
- メモリーアクセスのパフォーマンス・ボトルネックを特定
- インテル Parallel Universe 37 号日本語版の公開
- インテル® VTune™ プロファイラーをはじめよう
- インテル® プロセッサー上でのディープラーニング推論のデプロイメントの最適化手法
- ゲームとグラフィックス・アプリケーションのパフォーマンス解析
- 明示的なベクトル・プログラミング – 最も一般的な手法
- アプリケーション・パフォーマンス・スナップショット (APS) ユーザーガイド Linux* 版
- VR アプリケーションのパフォーマンス・チューニング
- 次世代メモリーへの準備
- アプリケーション・パフォーマンス・スナップショットとは
- チューニング・ガイドとパフォーマンス解析
- インテル® プラットフォーム上でディープ・イメージ・マッティング・アルゴリズムの推論を高速化する
- インテル® VTune™ Amplifier プラットフォーム・プロファイラーのインストールと使用法
- インテル® VTune™ Amplifier 2019 のプロファイルに基づく最適化レポート (プレビュー機能)
- インテル Parallel Universe 34 号日本語版の公開
- アプリケーション・パフォーマンス・スナップショット導入ガイド Windows* 版
- Google Cloud Platform* の Windows* インスタンスにインテル® Parallel Studio XE をインストール
- アマゾン ウェブ サービス* (AWS*) でインテル® Parallel Studio XE をインストールする
- Unreal* Engine 4/インテル® VTune™ Amplifier 利用ガイド
- コードの現代化を実践: スレッド化、メモリー、ベクトル化の最適化
- ミッションをクリアして抽選で景品をゲット!インテル® VTune™ Amplifier 解析チャレンジ・キャンペーン
- Unreal* Engine 4.19 の最適化にインテルのソフトウェア・エンジニアが協力
- インテル® HD グラフィックス向けにエッジベースの AI を最適化する
- インテル® VTune™ Amplifier、インテル® Advisor、およびインテル® Inspector を異なる OS で使用する
- インテル Parallel Universe 32 号日本語版の公開
- インテル® VTune™ Amplifier – 最近の OS セキュリティー・アップデートの影響
- インテル® VTune™ Amplifier + OpenMP* によりスレッドのパフォーマンスとスケーラビリティーを向上する (全 2回)
- インテル® VTune™ Amplifier 2018 オンラインヘルプ (iSUS 翻訳版)
- スレッドについての考察
- 2017 年秋のインテル® ソフトウェア製品技術ウェビナー
- HPC アプリケーションに役立つハイパフォーマンス解析
- インテル Parallel Universe 27 号日本語版の公開
- インテルが推進するディープラーニング・フレームワーク
- 並列アプリケーションのスケーラビリティーの問題を特定する
- インテル® VTune™ Amplifier XE の General Exploration (一般解析) がどのように動作するかを理解する
- Python* で無限のモノポリーゲームをプレイする
- インテル Parallel Universe 26 号日本語版の公開
- インテル® VTune™ Amplifier XE による Java* および Python* コードのプロファイル
- インテル® VTune™ Amplifier XE のコマンドラインのレポートでループ情報をホット関数として表示する方法
- マシンラーニングにおける Python* パフォーマンスの壁を乗り越える
- インテル® VTune™ Amplifier XE で Python*/Cython 混在コードをプロファイルする
- 等方性 3 次元有限差分 (3DFD) 波動方程式コード向けの NUMA を理解する
- インテル Parallel Universe 25 号日本語版の公開
- インテル® VTune™ Amplifier XE を利用した Python* コードの高速化
- Python* プロファイル
- インテル Parallel Universe 24 号日本語版の公開
- インテル® IPP を利用した画像識別の最適化
- メモリーアクセスのパフォーマンス・ボトルネックの検出
- インテル® VTune™ Amplifier 2015 for systems を使用してドライバーをプロファイルする方法
- インテル® System Studio 2015 のインテル® Energy Profiler を使用する
- コードで使用したメモリー割り当て/割り当て解除のトレースをサポートしたインテル® VTune™ Amplifier XE 2016 の新しいメモリーアクセス解析
- インテル® VTune™ Amplifier XE のリモートデータ収集を簡単に行う方法
- インテル® VTune™ Amplifier XE 2015 Update 2 による、ドライバーなしでのハードウェア・イベント・サンプリング (コールスタック付き) のサポート
- OS X* から Linux* へのリモートデータ収集ができない理由
- ループで呼び出される大きな関数を分割して命令キャッシュを最適化する
- すべてのノード上で MPI プロセスをプロファイルするには?
- インテル® VTune™ Amplifier XE によるマルチスレッド化とタスク解析
- 基本ホットスポット解析のオーバーヘッドを軽減する
- C# による並列プログラミング
- インテル® VTune™ Amplifier XE のソースビューは OpenCL* ソースファイルと関連付けることができないのか?
- VTune™ Amplifier XE 2015 を使用して GPU 上の OpenCL* カーネル解析を解析する
- Linux* オペレーティング・システムの電力消費の解析と最適化
- インテル® VTune™Amplifier XE 2015 を旧バージョンと共存する
- インテル® VTune™ Amplifier XE によるインテル® トランザクショナル・シンクロナイゼーション・エクステンション (インテル® TSX) のプロファイリング
- Apache* Tomcat* からの Java* アプレットをプロファイルするためインテル® VTune™ Amplifier XE を利用する
- インテル® VTune™ Amplifier XE で OpenMP* アプリケーションをプロファイルする
- スレッドローカル変数へのアクセスに隠されたパフォーマンス・コスト
- 新しいマイクロアーキテクチャーでアプリケーションはどのように実行されるのか? この疑問に答えるインテル® VTune™ Amplifier XE 2011
- レイテンシーの長い命令の影響を特定する
- AVX-SSE 切り替えペナルティーを回避する
- マルチスレッド開発ガイド: 4.7 データ構造とメモリー・アクセス・パターンを最適化してデータの局所性を高める
- インテル® Performance Bottleneck Analyzer
- インテル® OpenCL SDK 環境におけるインテル® VTune™ Amplifier XE 2011 の操作
- インテル® VTune™ Amplifier XE Linux* 版を使用するためのコンパイラー・オプション
- hotspot 解析で MPI ジョブからスポーンされたプロセスを追跡できない理由
- [Bottom-up (ボトムアップ)] ペインと [Call Stack (コールスタック)] ペインの不一致
- インテル® Parallel Studio XE を使用した Windows* 上での Fortran プログラムのパフォーマンス解析
- イベント・ベース・サンプリング (EBS) を使用した FLOPS の推定
- インテル® VTune™ Amplifier XE 2011 日本語ヘルプファイル公開
リソース
ドキュメント
- インストール・ガイド: インテル® VTune™ プロファイラーのインストール・方法。
- 導入ガイド: インテル® VTune™ プロファイラーの基本的な使い方。
- チュートリアル [Windows | Linux]: インテル® VTune™ プロファイラーを使い始める方法。チュートリアルでは、アプリケーションに適用できる、エンドツーエンドのワークフローを説明します。
- インテル® VTune™ プロファイラー・ユーザーガイド
- インテル® VTune™ プロファイラー・パフォーマンス解析クックブック
- インテル® VTune™ プロファイラー・リリースノート (英語): インテル® VTune™ プロファイラーのソフトウェア要件、サポートされる OS 情報、新機能、そして既知の問題などが含まれます。
- APS 導入ガイド: インテル® VTune™ プロファイラーの Application Performance Snapshot (APS) の基本的な使い方。
サンプルコード
- 行列乗算 (英語)
- N 体シミュレーション (英語)
サポート
-
コミュニティーに問い合わせ
Forums (英語) からほかのユーザーやエキスパートに問い合わせできます。
-
インテル社の製品サポートに英語で問い合わせ
Online Service Center (英語) ではインテル社のサポートチームにお問い合わせいただけます。
-
エクセルソフト社の技術サポートに日本語で問い合わせ
ユーザー登録完了後、技術サポート受付フォームよりお問い合わせください。
ソフトウェア EULA (英語)
FAQ
よくある問い合わせ
-
“Basic Hotspots” と “Andvanced Hotspots” の違いはなんですか?
-
Basic Hotspots (“Hotspots (ホットスポット)” とも呼ばれる)
- ソフトウェアによる収集を行う
- ドライバーは不要
- インテル® プロセッサーと互換プロセッサーで動作
- ~10 ミリ秒の解像度
- 呼出しシーケンスを表示するためコールスタックを収集
- 仮想環境に対応
-
Advanced Hotspots
- ハードウェア収集とオンチップのパフォーマンス・モニタリング・ユニット (PMU) を使用する
- インストール時に管理者権限が必要なソフトウェアにドライバーが含まれます。
- インテル® プロセッサーのみで動作
- ~1 ミリ秒の解像度 (小さな関数を検知)
- コールスタック収集はオプション
- VM ベンダー (VMware*、vSphere* 5.1 など) によってサポートされる仮想環境でのみ動作
-
-
インテル製ではない互換プロセッサーを搭載するシステムにインテル® VTune™ プロファイラーをインストールして使用することはできますか?
はい。IA32 およびインテル® 64 命令セットで構成されるアプリケーションを解析する場合、インテル® プロセッサーと互換プロセッサーを搭載するシステムでインテル® VTune™ プロファイラーを利用することができます。
ソフトウェア収集を使用するプロファイル機能 (“Basic Hotspots” と “Locks & Waits”) は、インテル® プロセッサーと互換プロセッサーで利用できます。
ハードウェア収集とオンチップのパフォーマンス・モニタリング・ユニットを使用するプロファイル機能 (“Advanced Hotspots” と “Microarchitecture Analysis” など) は、データ収集を行うにはインテル純正プロセッサーが必要です。データ収集後の結果の解析は互換プロセッサー上でも行えます。
-
いいえ、インテル® VTune™ プロファイラーでプロファイルを行う限り再コンパイルの必要はありません。しかし、プロファイル結果を完全かつ有効に活用するため、最適化されたアプリケーションにデバッグおよびシンボル情報を生成しておくことを推奨します。これには、最適化されたリリースビルドの手順でシンボルを生成するオプションを追加するだけで対応できます。
-
インテル® VTune™ プロファイラーを利用するにはインテル® コンパイラーを使用する必要がありますか?
いいえ、解析するアプリケーションのビルドは、インテル® コンパイラーである必要はありません。しかし、OpenMP* を使用している場合、最良の結果を取得するにはインテル® コンパイラーで提供されるランタイムを使用することを推奨します。
-
はい。
-
リモートデータ収集を行うには、複数の製品ライセンスが必要ですか?
いいえ、すでに製品をお持ちであれば、CLI インストーラー (コマンドライン・インストーラー) は、同種の OS のリモートシステム上でのコレクターのインストールが許可されます。
リモートシステムでデータの収集はできますが、結果を表示するにはライセンスが必要です。リモートシステムから収集結果をライセンスがインストールされているシステムへコピーして、結果を解析します。詳細は、ドキュメントにある「Remore Tuning Workflow」を参照してください。インストールに関する詳細は、リリースノートの「Installing Collectors on Remote Systems」をご覧ください。
-
インテル® VTune™ プロファイラーが解析結果とともにソースコードを表示できないのには、いくつかの原因が考えられます。
解析結果とともにソースコードを表示するには、デバッグ情報を利用できるようにコンパイルする必要があります。たとえば、 Linux* では、”-g” コンパイラー・オプションが指定されていることを確認してください。
また、インテル® VTune™ プロファイラーにソースファイル、バイナリーファイル、そしてシンボル情報ファイルが格納されている場所を知らせなければいけません。これには、プロジェクトを開くか生成して、[Project Properties] ボタンをクリックしてください。プロジェクト・プロパティーのダイアログで、[Search Directories] タブをクリックします。プルダウンメニューから、[All files] をクリックして、ファイルが格納されているディレクトリーを指定します。サブディレクトリーがある場合は、[Search subdirectories] ボックスをチェックすることを忘れないでください。
-
“Advanced Hotspots” や “Advanced Analysis” を使用してハードウェア収集を行う場合、root 権限が必要ですか?
いいえ、Linux* では、ハードウェア・コレクターのドライバーをインストール時には root 権限が必要ですが、インストールが完了すると root 権限は必要ありません。事前インストールされたパフォーマンス・ドライバーを使用することもできますが、すべての機能がサポートされる訳ではありません。
しかし、Linux* ではインストール時のオプションの選択に注意が必要です。ハードウェア・コレクターを使用する利用者のアカウントが、ドライバー・アクセス・グループ (デフォルトでは “vtune”) のメンバーに追加されていなければいけません。ハードウェア・コレクターは、”Advanced Hotspots” と高度な解析で使用されます。詳細については、ドキュメントの「Installing the Sampling Driver」をご覧ください。
-
インテル® VTune™ プロファイラーを使用するには、どのファイルとディレクトリーにアクセスする権限が必要ですか?
ハードウェアベース (“Advanced”) サンプリング解析では、プロセッサーのパフォーマンス・モニタリング・ユニット (PMU) と通信する必要があるため、インストーラーはデバイスドライバーをインストールします。
Windows* では、管理者もしくは管理者グループに属するユーザーがインストールを行う必要があります。Linux* では、インストールは root か、sudo で行う必要がります。Linux* では、デバイスドライバーをインストールせずに、ユーザーモードのソフトウェア取集による解析を行うことができます: “Basic Hotspots”、”Concurrency” そして “Locks-and-Waits” 事前インストールされたパフォーマンス・ドライバーを使用することもできますが、すべての機能がサポートされるわけではありません。ユーザーは root でソフトウェアをイストールすることができますが、その場合、ハードウェア・ベースのサンプリングを行うユーザーは (インストール時のオプション選択に依存)、インストール時に定義されたグループに属していなければなりません。デフォルトでは、グループは “vtune” です。これは、インストール時に高度なオプション “Advanced option” を選択することで変更できます。
-
インテル® VTune™ プロファイラーに結果をインポートするには、最初にインポートされた結果を含むプロジェクトを生成しなければいけません。インテル® VTune™ プロファイラーを起動して、[File] > [New] > [Project] メニューをクリックします。プロジェクト名を設定するダイアログが開きます。名前を入力し、[OK] をクリックします。インテル® VTune™ プロファイラーは、[Project Properties] ダイアログを表示します。
プロジェクトに結果をインポートするだけであれば、アプリケーション名を指定する必要はありません。インポートした結果のソースコードを表示する場合、ソースとバイナリーがある位置の検索ディレクトリーを指定する必要があります。プロジェクト・プロパティーのダイアログで、[Search Directories] タブをクリックします。プルダウンメニューから、[All files] をクリックして、ファイルが格納されているディレクトリーを指定します。サブディレクトリーがある場合は、[Search subdirectories] ボックスをチェックすることを忘れないでください。
-
検索ディレクトリーのパスを追加しましたが、何も変わりません。
ディレクトリー検索は、通常データ収集が終了した最終フェーズで行われます。新しい、[Search directory] パスを有効にするには、インテル® VTune™ プロファイラーは、新しい情報を使用して再解決する必要があります。[Analysis Type] タブをクリックして、[Start] と [Project Properties] ボタンの下にある、右側の [Re-resolve] ボタンをクリックしてください。
-
状況によっては、サンプルカウントは通常実行コードに関連付けられていないソースライン上に表示されることがあります。
例えば、”for” や “while” ループの閉じ波括弧など。これはエラーのように見えますが、コンパイラーによって生成された命令である場合があります。アセンブリーコードを表示すると、アセンブリー命令のデバッグ情報がどのサンプルに起因するか明らかにすることができ、ソース行にタグ付けできます。アセンブリー命令に表示される “Other times (そのほかの時間)” は、命令で収集された可能性のあるハードウェア・イベント (分岐命令で生じたメモリーイベントやメモリー命令で生じた演算イベンチ) を示します。これは、”イベント・スキッド (event skid)” として知られ、プロセッサーが命令ポインターをサンプリングする前に、いくつかのマイクロオペレーションの実行を停止できなかったことに起因します。これにより、IP (命令ポインター) は、サンプリングされた時点で次の命令を指しています。通常、命令の流れを調べることによって、命令がイベントに一致するか決定できます。
-
インテル® VTune™ プロファイラーを使用して、ディスク I/O に費やされている時間を調査できますか?
アプリケーションが、ブロッキング I/O を行っている場合、ファイル・アクセサリーに起因する関数呼び出しは、”Basic Hotspots” 解析で表示されます。また、複数のスレッドが 1 つのファイルのアクセスを待機する場合、同期オブジェクトがファイルを保護し、クリティカル・セクションは、”Locks and Waits” に表示されるはずです。
コンパイラーの最適化に関する詳細は、最適化に関する注意事項を参照してください。