インテル® VTune™ プロファイラー・ユーザーガイド

collect

指定した解析タイプを実行して結果データを収集します。

GUI オプション

[解析の設定] ウィンドウ > [どのように] ペイン

構文

-collect <analysis_type>

-c <analysis_type>

引数

analysis_type

パフォーマンス解析のタイプ。次の解析タイプと設定可能な knob がサポートされます。

hotspots

収集モードを指定して最も時間を要するソースコードを特定します。

  • -knob sampling-mode=sw (以前の基本ホットスポット): ユーザーモード・サンプリングとトレースを基にホットスポットとスタック情報を収集します。サンプリング・ドライバーは必要ありませんが、収集のオーバーヘッドは増加します。このモードはシステムのプロファイルには使用できません。アプリケ―ションを起動するか、プロセスにアタッチする必要があります。

  • -knob sampling-mode=hw (以前の高度なホットスポット): システム上のすべてのプロセスをサンプリングしてホットスポットを特定します。

収集タイプ: ユーザーモード・サンプリングとトレース収集、またはハードウェア・イベントベース・サンプリング。

Knob: enable-characterization-insightsenable-stack-collectionsampling-intervalsampling-mode

threading

アプリケーションが利用可能な論理 CPU コアをどのように使用しているかを解析し、同期オーバーヘッドを含む並列処理を見つけ、待機がアプリケーションのパフォーマンスに与える影響を調べて並列化の候補を特定します。

ユーザーモード・サンプリングとトレース収集を行います。

knob: sampling-interval

memory-consumption

個別のメモリー・オブジェクトとそれらの割り当てスタックを含む、Linux* アプリケーションのメモリー消費を解析します。

収集タイプ: ユーザーモード・サンプリングとトレース収集。

Knob: mem-object-size-min-thres

hpc-performance

計算集約型またはスループットに依存するアプリケーションの CPU、メモリー、および FPU 利用率の最適化の可能性を特定するのに役立ちます。

収集タイプ: ハードウェア・イベントベース・サンプリング収集。

Knob: enable-stack-collectioncollect-memory-bandwidthsampling-intervaldram-bandwidth-limits

uarch-exploration (以前の general-exploration)。

アプリケーションのパフォーマンスに影響する最も顕著なハードウェアの問題を特定して、その場所を見つけます。この解析タイプは、マイクロアーキテクチャー解析の出発点として使用されます。

収集タイプ: ハードウェア・イベントベース・サンプリング収集。

Knob: enable-stack-collectioncollect-memory-bandwidthenable-user-tasks

memory-access

メモリーアクセスに関連する問題 (例えば、NUMA アーキテクチャー固有) を特定する一連のメトリックを測定します。

収集タイプ: ハードウェア・イベントベース・サンプリング収集。

Knob: sampling-intervaldram-bandwidth-limitsanalyze-openmp; (Linux* のみ): analyze-mem-objectsmem-object-size-min-thres

sgx-hotspots (非推奨)

インテル® ソフトウェア・ガード・エクステンション (インテル® SGX) 機能が有効化なシステムで、セキュリティー保護された内部のホットスポットを解析します。

収集タイプ: ハードウェア・イベントベース・サンプリング収集。

Knob: enable-stack-collectionenable-user-tasks

tsx-exploration (非推奨)

インテル® トランザクショナル・シンクロナイゼーション・エクステンション (インテル® TSX) の使用を解析します。

収集タイプ: ハードウェア・イベントベース・サンプリング収集。

Knob: enable-user-tasksanalysis-step

tsx-hotspots (非推奨)

トランザクション内部のホットスポットを解析します。

Knob: enable-user-tasksenable-stack-collection

cpugpu-concurrency (非推奨)

CPU/GPU 並行性解析を有効にし、システム上の各種 CPU と GPU コア上のコード実行を調査し、CPU と GPU のアクティビティーを関連付けて、アプリケーションが GPU 依存か CPU 依存か特定します。

Knob: sampling-intervalenable-user-tasksenable-user-syncenable-gpu-usagegpu-counters-modeenable-gpu-runtimes

gpu-hotspots

高い GPU 利用率の GPU タスクを特定し、この利用率の効率を予測します。

収集タイプ: ハードウェア・イベントベース・サンプリング収集。

Knob: gpu-sampling-intervalenable-gpu-usagegpu-counters-modeenable-gpu-runtimesenable-stack-collection

gpu-profiling (非推奨)

コード行ごとの GPU カーネル実行を解析し、メモリー・レイテンシーや非効率なカーネルのアルゴリズムによるパフォーマンスの問題を特定します。

収集タイプ: ハードウェア・イベントベース・サンプリング収集。

Knob: gpu-profiling-modekernels-to-profile.

graphics-rendering (プレビュー)

Xen* 仮想化プラットフォームで実行されるコードの CPU/GPU 利用率を解析します。GPU エンジンごとの GPU 使用量と GPU ハードウェア・メトリックを調査することで、パフォーマンスの向上が可能な場所を理解するのに役立ちます。可能であれば、この解析は OpenGL* ES API 呼び出しを検出してタイムラインに表示します。

収集タイプ: ハードウェア・イベントベース・サンプリング収集。

Knob: gpu-sampling-intervalgpu-counters-mode

fpga-interaction (プレビュー)

FPGA 上で実行されている OpenCL* カーネルを調査して、CPU/FPGA 相互作用の問題を解析し、最も時間がかかる FPGA カーネルを特定します。

収集タイプ: ハードウェア・イベントベース・サンプリング収集。

Knob: sampling-intervalenable-stack-collection

io

I/O サブシステム、CPU およびプロセッサー・バスの利用率を監視します。

収集タイプ: ハードウェア・イベントベース・サンプリング収集。

Knob: kernel-stackcollect-memory-bandwidthdram-bandwidth-limits; Linux* のみ: dpdkspdk

これは、Windows* ではプレビュー機能です。プレビュー機能は、正式リリースに含まれるかどうか未定です。皆さんが機能に対する有用性のフィードバックを送ることで、将来の採用決定の判断に役立ちます。プレビュー機能で収集されたデータは、将来のリリースで下位互換が提供される保証はありません。parallel.studio.support@intel.com または intelsystemstudio@intel.com へフィードバックをお送りください。

system-overview

Linux* または Android* ターゲットシステムの全般的な動作を評価し、電力とパフォーマンスのメトリックを IRQ 処理と関連付けます。

収集タイプ: ハードウェア・イベントベース・サンプリング収集。

Knob: collection-detail

Android* システムでは、インテル® VTune™ プロファイラーは、インテル® HD グラフィックスとインテル® Iris® グラフィックスを搭載するプロセッサーでのみ GPU 解析を実行できます。収集した結果を CLI レポートで表示することはできません。結果を確認するには、GUI で結果を開きます。

デフォルト

オフ

collect アクションが指定されないと、vtune コマンドはデータの収集を行いません。

修飾子

[no]-allow-multiple-runs[no]-analyze-system data-limitdiscard-raw-datadurationfinalization-mode[no]-follow-childknob mrte-modequietresume-afterreturn-app-exitcodering-buffersearch-dirstart-pausedstrategy[no-]summarytarget-duration-typetarget-pidtarget-processtarget-systemtrace-mpino-unplugged-modeuser-data-dirverbose

説明

解析とデータの収集を行うには、collect アクションを使用します。デフォルトで、この手順は指定されたタイプの解析を実行し、データを収集して結果ファイルをファイナライズして、サマリーレポートを stdout に出力します。ほとんどの場合、search-dir アクションオプションで検索ディレクトリーを指定できます。一部の解析タイプでは、追加レベルを指定する knob オプションがサポートされます。

目的に合わせて collect アクションのカスタマイズに使用できる各種オプションがあります。例えば、子プロセスのみを解析する、一定時間が経過してから収集を開始する、または結果をファイナライズせずに収集を行う、などを選択できます。このトピックにはいくつかの例が含まれます。詳細については、以下で説明する help コマンドを使用するか、実行する解析タイプに関連する情報をこのドキュメントで検索してください。

アクションに関する最新のコマンドラインのドキュメントを確認するには、vtune -help <action> を使用します。<action> には利用可能なアクションを指定できます。利用可能なアクションを確認するには、vtune -help を入力します。

プロセッサーでサポートされる解析タイプを確認するには、次のコマンドを使用します。

vtune -help collect

サポートされる解析タイプの詳細を確認するには、次のコマンドを使用します。

vtune -help collect <analysis_type>

このコマンドは、指定した解析タイプと設定オプション (knob) の説明を表示します。

代替オプション

collect-with

collect-with アクションは、 collect アクションと同じ基本機能を実行しますが、カスタム設定向けの追加 knob も用意されています。

このコマンドは、Linux* の myApp アプリケーションでハードウェア・イベントベース・サンプリング・モードのホットスポット解析を実行し、結果をデフォルト・ディレクトリーに書き込み、サマリーレポートを出力します。

vtune -collect hotspots -knob sampling-mode=hw -- /home/test/sample

適切な結果を得るには、検索ディレクトリーを指定します。この例では、デフォルトの命名規則でホットスポットの結果を収集して、home/import/system_modules を最優先検索ディレクトリーとしてシンボルファイルを検索します。

vtune -collect hs -search-dir /home/import/system_modules -- /home/test/sample

ホットスポット収集を実行中のプロセスにアタッチするには、target-pid または target-process オプションを使用します。この例では、target-pid を使用して ID が 1234 の実行中のプロセスに収集をアタッチします。

 vtune -collect hotspots -target-pid 1234

no-auto-finalize アクションオプションは、スレッド化解析を開始してパフォーマンス・データを収集し、結果をファイナライズせずに終了します。

vtune -collect threading -no-auto-finalize -- /home/test/sample

関連情報