インテル® VTune™ Amplifier

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

advanced-hotspots (廃止予定 - 代わりに hotspots を使用)

最も時間を消費するソースコードを特定します。advanced-hotspots はスタック情報を収集しないため、hotspots よりもオーバーヘッドは少なくなります。この解析タイプは、システム上のすべてのプロセスのサンプルにも使用できます。

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

knob: collection-detailenable-user-tasksenable-gpu-usagegpu-counters-modesampling-intervalevent-modeenable-gpu-runtimes

threading

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

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

knob: sampling-interval

concurrency (廃止予定 - 代わりに threading を使用)

アプリケーションが利用可能な論理 CPU コアをどのように使用しているかを解析し、並列処理で同期オーバーヘッドが発生している場所を調査して、並列化の候補を特定します。

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

knob: enable-user-syncenable-user-taskssampling-intervalenable-gpu-usagegpu-counters-modeenable-gpu-runtimes

locksandwaits (廃止予定 - 代わりに threading を使用)

アプリケーションが同期オブジェクトや I/O 操作で待機している場所を特定し、これらの待機がアプリケーションのパフォーマンスに与える影響を調査します。

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

knob: enable-user-syncenable-user-tasksenable-gpu-usagegpu-counters-modesampling-intervalenable-gpu-runtimes

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™ Amplifier は、インテル® HD グラフィックスとインテル® Iris® グラフィックスを搭載するプロセッサーでのみ GPU 解析を実行できます。収集した結果を CLI レポートで表示することはできません。結果を見るには、GUI で結果を開きます。

デフォルト

オフ

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

修飾子

[no]-allow-multiple-runs[no]-analyze-systemdata-limitdiscard-raw-datadurationfinalization-mode[no]-follow-childknobmrte-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 コマンドを使用するか、このドキュメントで実行する解析タイプに関連する情報を検索してください。

アクションに関する最新のドキュメントを開くには、次のコマンドを実行します。amplxe-cl -help <action>。ここで、<action> は次のいずれかのアクションです。利用可能なアクションを見るには、amplxe-cl -help を入力します。

プロセッサーでサポートされる解析タイプを確認するには:

amplxe-cl -help collect

サポートされる解析タイプの詳細を見るには:

amplxe-cl -help collect <analysis_type>

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

代替オプション

collect-with

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

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

$ amplxe-cl -collect hotspots -knob sampling-mode=hw -- /home/test/sample

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

$ amplxe-cl -collect hs -search-dir /home/import/system_modules -- /home/test/sample

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

 $ amplxe-cl -collect hotspots -target-pid 1234

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

$ amplxe-cl -collect threading -no-auto-finalize -- /home/test/sample

関連情報