インテル® VTune™ Amplifier

カスタム解析オプション

事前定義解析タイプのコピーを作成すると、新しいカスタム設定は元の解析で利用可能なすべてのオプションを継承して編集可能な状態にします。

以下は、カスタム設定で利用可能なすべてのオプション (knob) のアルファベット順のリストです。

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

A

[Analyze GPU usage (GPU 利用率を解析)] チェックボックス (インテル® HD グラフィックスやインテル® Iris® グラフィックスを搭載した Linux* ターゲットで使用可能)

GPU 使用を解析して、アプリケーションが CPU または GPU のどちらに依存しているか判断します。

[Analyze I/O waits (I/O 待機を解析)] チェックボックス

各スレッドと CPU が I/O 待機状態で費やす時間のパーセンテージを解析します。

[Analyze loops (ループを解析)] チェックボックス

ループ解析を拡張し、命令セットの使用など高度なループ情報を収集してループと関数の解析結果を表示します。

[Analyze memory bandwidth (メモリー帯域幅を解析)] チェックボックス

メモリー帯域幅を計算するのに必要なイベントを収集します。

[Analyze memory consumption (メモリー消費を解析)] チェックボックス (Linux* ターゲットのみ)

最も高いメモリー消費とメモリー・オブジェクトに関する情報を収集して解析します。

[Analyze memory objects (メモリー・オブジェクトの解析)] チェックボックス (Linux* ターゲットのみ)

メモリーの割り当て/解放のインストルメントとハードウェア・イベントのメモリー・オブジェクトへのマップを有効にします。

[Analyze OpenMP regions (OpenMP* 領域を解析)] チェックボックス

アプリケーションの OpenMP* 領域を測定して、パフォーマンス・データを領域/ワークシェア構造別にグループ化し、スケジュール、リダクションおよびアトミック操作におけるインバランス、ロック競合、またはオーバーヘッドを検出します。このオプションはオーバーヘッドと結果のサイズを増加させます。

[Analyze PCIe bandwidth (PCIe* 帯域幅を解析)] チェックボックス

PCIe* 帯域幅を計算するのに必要なイベントを収集します。タイムライン上でリード/ライト操作の分布を解析し、PCIe* バス帯域幅の限界に到達することでアプリケーションが停止する可能性がある場所を特定できます。

[デバイスクラス] ドロップダウン・メニューでは、PCIe* 帯域幅を解析するデバイスクラス (処理アクセラレーター、大容量記憶装置、ネットワーク・コントローラー、またはすべてのデバイスクラス (デフォルト)) を選択できます。

この解析は、インテル® マイクロアーキテクチャー開発コード名 Sandy Bridge EP 以降でのみ使用できます。

[Analyze Processor Graphics hardware events (プロセッサー・グラフィックス・ハードウェア・イベントを解析)] ドロップダウン・メニュー

事前定義された GPU メトリックに基づいて、インテル® HD グラフィックスおよびインテル® Iris® グラフィックス (以降、「インテル® グラフィックス」) のパフォーマンス・データを解析します。

[Analyze system-wide context switches (システム全体のコンテキスト・スイッチを解析)] チェックボックス

システム上のすべてのスレッドのスケジュール配置を詳しく解析して、スレッドのコンテキスト・スイッチの原因 (プリエンプションまたは同期) を特定します。

[Analyze user synchronization (ユーザー同期を解析)] チェックボックス

スレッドの同期を解析するには、ユーザー同期 API プロファイルを有効にします。このオプションはオーバーヘッドと結果のサイズを増加させます。

[Analyze user tasks, events, and counters (ユーザータスク、イベントおよびカウンターを解析)] チェックボックス

ITT API を使用して、コードで指定したタスク、イベント、およびカウンターを解析します。このオプションはオーバーヘッドと結果のサイズを増加させます。

C

[Chipset events (チップセット・イベント)] フィールド

ハードウェア・イベントベース・サンプリング・コレクターでモニターするチップセット・イベントをカンマで区切って指定します (最大 5 イベント)。

[Collect context switches (コンテキスト・スイッチを収集)] チェックボックス

アプリケーション内のすべてのスレッドのスケジュール配置を詳しく解析して、コンテキスト・スイッチに費やされた時間を調べ、スレッドのコンテキスト・スイッチの原因 (プリエンプションまたは同期) を特定します。

Perf ベースのドライバーを使用しない収集では、コンテキスト・スイッチのタイプ (プリエンプションや同期) を識別できません。

[Collect CPU sampling data (CPU サンプリング・データを収集)] メニュー

CPU サンプルと関連するコールスタック情報を収集するかどうか選択します。

[Collect highly accurate CPU time (高精度の CPU 時間を収集)] チェックボックス (Windows* ターゲットのみ)

精度の高い CPU 時間データを収集します。このオプションはランタイムのオーバーヘッドと結果のサイズを増加させます。管理者権限が必要です。

[Collect I/O API data (I/O API データを収集)] メニュー

I/O 呼び出しと関連するコールスタック情報を収集するかどうか選択します。この解析オプションを使用すると、スレッドが待機する場所を特定し、スレッドの並行性を計算できます。コレクターは API をインストルメントするため、オーバーヘッドが大きくなり、結果サイズが増加します。

[Collect Parallel File System counters (並列ファイルシステムのカウンターを収集)] チェックボックス

有効にすると、帯域幅、パケットレート、平均パケットサイズ、その他を含む、Lustre* ファイルシステムのパフォーマンス統計を解析します。

[Collect signalling API data (シグナル API のデータを収集)] メニュー

同期オブジェクトとシグナルコールのコールスタックに関連する情報を収集するかどうかを選択します。この解析オプションは、タイムラインの同期遷移と関連する待機のシグナル・コール・スタックを特定するのに役立ちます。コレクターはシグナル API をインストルメントするため、オーバーヘッドが大きくなり、結果サイズが増加します。

[Collect stacks (スタックを収集)] チェックボックス

スレッドのコンテキスト・スイッチとコールスタックの高度な収集を有効にして、実行パスごとのパフォーマンス、並列処理、および電力消費を解析ます。

[Collect synchronization API data (同期 API のデータを収集)] メニュー

同期待機呼び出しと関連するコールスタック情報を収集するかどうかを選択します。この解析オプションを使用すると、スレッドが待機する場所を特定し、スレッドの並行性を計算できます。コレクターは API をインストルメントするため、オーバーヘッドが大きくなり、結果サイズが増加します。

[Collect thread affinity (スレッド・アフィニティーを収集)] チェックボックス

ソケット、物理コア、および論理コアへのスレッドのピニングを解析します。物理コアではなく論理コアを利用して低い物理 CPU 利用率の原因となる、誤ったアフィニティーを識別します。

アフィニティー情報は、スレッドのライフタイムの最後に収集されるため、結果として得られるデータは、スレッドのライフタイム中に変更された動的なアフィニティーの問題全体を示すものではありません。

[CPU Events (CPU イベント)]

  • 最初のカラムのチェックボックスを使用して、収集するハードウェア・イベントを指定します。デフォルトでは、この表にはターゲット・プラットフォームで使用可能なすべてのイベントと、事前選択された解析設定のイベントが表示されます。検索機能を使用して注目するイベントを見つけることができます。イベントの詳細を取得するには、表からイベントを選択して [説明] ボタンをクリックします。

  • イベントのサンプリング間隔 (SAV) を変更して、インテル® VTune™ Amplifier がイベントデータ収集に割り込むイベント数を制御します。[サンプリング間隔 (SAV)] 値はターゲットの持続時間に依存します。持続時間の値に基づいて、インテル® VTune™ Amplifier は乗数を使用して [サンプリング間隔 (SAV)] 値を調整します。

[CPU sampling interval, ms (CPU サンプリング間隔 (ミリ秒))] フィールド

収集される CPU サンプルの間隔を指定します (ミリ秒)。

D

[Disable alternative stacks for signal handlers (シグナルハンドラー向けに代替スタックを無効化)] チェックボックス (Linux* ターゲットで利用可能)

シグナルハンドラーの代替スタックの使用を無効にします。Linux* 上で Python* 3 コードをプロファイルするには、このオプションの利用を検討してください。

E

[Enable driverless collection (ドライバーを使用しないサンプリング収集を有効化)] チェックボックス

可能な場合はドライバーを使用しない Perf ベースのハードウェア・イベントベース収集を使用します。

[Evaluate max DRAM bandwidth (DRAM の最大帯域幅を評価)] チェックボックス

収集を開始する前に、達成可能な最大 DRAM 帯域幅を評価します。このデータは、タイムライン上で帯域幅メトリックをスケールし、しきい値を計算するために使用されます。

[Event mode (イベントモード)] ドロップダウン・リスト

イベントベース・サンプリング収集を USER (ユーザーイベント) または OS (システムイベント) に制限します。デフォルトではすべてのイベントタイプが収集されます。

G

[GPU Profiling mode (GPU プロファイル・モード)] ドロップダウン・メニュー

このプロファイル・モードを選択すると、非効率なアルゴリズムに起因する基本ブロックのレイテンシー、メモリーアクセスの問題に起因するメモリー・レイテンシー、または命令数 (プレビュー機能) を特定できます。このオプションは、通常、GPU In-kernel プロファイルに使用されます。

この表を使用して、対象とするカーネルを指定し、GPU in-kernel 解析を特定のカーネルに絞り込んで、収集のオーバーヘッドを最小化します。必要に応じて、それぞれのカーネルのインスタンス・ステップ (カーネル数単位のサンプリング間隔) を変更します。

[GPU サンプリング間隔 (ミリ秒)] フィールド

GPU サンプル間の間隔を指定します。

L

[Limit PMU collection to counting (PMU 収集のカウンティングを制限)] チェックボックス

有効にすると、各 PMU イベントの詳細なコンテキスト・データ (コードやハードウェア・コンテキストなど) の代わりにイベントのカウントを収集します。カウント収集モードはオーバーヘッドが低くなりますが、得られる情報も少なくなります。

[Linux Ftrace events (Linux* Ftrace イベント)]/[Android framework events (Android* フレームワーク・イベント)] フィールド

カーネル・イベント・ライブラリーを使用して、コレクターで監視する Linux* Ftrace および Android* フレームワーク・イベントを選択します。収集されたデータは、タイムラインではタスクとして表示されます。[タスク] グループ化レベルを適用して、グリッドにパフォーマンス統計を表示することも可能です。

M

[Managed runtime type to analyze (解析するマネージドランタイムのタイプ)] メニュー

解析するマネージドランタイムのタイプを選択します。次のオプションが利用できます。

  • Windows* ターゲット: Java* と .NET 解析の組み合わせ、Java*、.NET、 および Python* 解析の組み合わせ、Python* のみの解析

  • Linux* ターゲット: Java* のみの解析、Java* と Python* 解析の組み合わせ、Python* のみの解析

[Minimal memory object size to track, in bytes (追跡する最小動的メモリー・オブジェクト・サイズ (バイト)] スピンボックス (Linux* ターゲットのみ)

解析するメモリー割り当ての最小サイズを指定します。このオプションは、インストルメントの実行時のオーバーヘッドを軽減するのに有効です。

P

[Profiling mode (プロファイル・モード)] ドロップダウン・メニュー

プロファイル・モードを選択すると、非効率なアルゴリズムに起因する基本ブロックのレイテンシーやメモリーアクセスの問題に起因するメモリー・レイテンシーを特定できます。このオプションは、通常、GPU In-kernel プロファイルに使用されます。

この表を使用して、対象とするカーネルを指定し、GPU in-kernel 解析を特定のカーネルに絞り込んで、収集のオーバーヘッドを最小化します。必要に応じて、それぞれのカーネルのインスタンス・ステップ (カーネル数単位のサンプリング間隔) を変更します。

S

[スタックサイズ (バイト)] フィールド

処理する生スタックのサイズ (バイト) を指定します。ゼロは無制限のサイズを意味します。指定できる値は、0 から 2147483647 の間の整数値です。

[Stack type (スタックタイプ)]

ソフトウェア・スタックとハードウェア LBR ベースのスタックのいずれかを選択できます。ソフトウェア・スタックには深さの制限がなく、ハードウェア・スタックよりも多くのデータを提供しますがオーバーヘッドは増加します。一般に、収集のオーバーヘッドが重要でなければ、ソフトウェア・スタック・タイプを推奨します。ハードウェア LBR スタックは、すべてのプラットフォームで利用できるわけではありません。

[Stack unwinding mode (スタック・アンワインド・モード)] メニュー

収集でオンライン (収集中) またはオフライン (収集後) のスタック・アンワインド (巻き戻し) 必要かどうかを選択します。オフラインモードは、解析のオーバーヘッドを軽減するため、通常推奨されます。

[Stitch stacks (スタックのスティッチ)] チェックボックス

インテル® ランタイム・ライブラリーでインテル® スレッディング・ビルディング・ブロック (インテル® TBB) または OpenMP* を使用するアプリケーションでは、呼び出しフローを再構築して、スタックを並列ワークロードの開始位置にアタッチします。

T

[Trace OpenCL and Intel Media SDK Processor Graphics (Intel Graphics Driver only) (OpenCL* とインテル® メディア SDK プロセッサー・グラフィックスをトレース (インテル® グラフィックス・ドライバーのみ))] チェックボックス

GPU 上の OpenCL* カーネルとインテル® メディア SDK プログラムの実行時間を取得し、パフォーマンス・クリティカルな GPU タスクを特定して、GPU ハードウェア・メトリックごとのパフォーマンスを解析します。

インテル® メディア SDK プログラム解析は、Linux* ターゲットでのみサポートされます。

U

[Uncore sampling interval, ms (アンコア・サンプリング間隔 (ミリ秒))] フィールド

アンコア・イベント・サンプル間の間隔を指定します (ミリ秒)。

[Use precise multiplexing (プリサイス多重化を使用)] チェックボックス

各サンプルでイベントグループを切り替える、細粒度のイベント多重化モードを有効にします。このモードは、実行時間が短いアプリケーションでより信頼度の高い統計情報を提供します。結果の MUX 信頼性メトリック値が低い場合、プリサイス多重化アルゴリズムを適用することも考慮します。

下部の [コマンドライン...] ボタンを使用して、この設定のコマンドラインを生成できます。

関連情報