インテル® VTune™ Amplifier 2018 ヘルプ

カスタム解析オプション - ユーザーモード・サンプリングとトレース

ユーザーモード・サンプリングとトレース収集を基にする事前定義された解析タイプのコピーを作成すると、インテル® VTune™ Amplifier はこの収集に適したオプションを提示し、デフォルトで元の事前定義されている解析タイプのオプションを有効にします。

次のユーザーモード・サンプリングとトレース収集のオプションがカスタム設定で利用できます。

操作

説明

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

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

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

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

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

正確な CPU 時間データを収集します。このオプションを使用すると、ランタイムのオーバーヘッドが大きくなり、結果サイズが増加します。管理者権限が必要です。

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

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

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

シグナル呼び出しと関連するコールスタックに関する情報を収集するかどうかを選択します。タイムラインの同期遷移と関連する待機のシグナル・コール・スタックを表示します。コレクターは、シグナル API をインストルメントするため、オーバーヘッドが大きくなり、結果サイズが増加します。

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

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

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

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

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

スレッドの同期を解析するには、[User synchronization API (ユーザー同期 API)] プロファイルを有効にします。このオプションを使用すると、オーバーヘッドが大きくなり、結果サイズが増加します。

[Stack unwinding mode (スタック巻き戻しモード)] メニュー

オンライン (収集中) またはオフライン (収集後) のスタック巻き戻しモードを選択します。オフラインモードは解析のオーバーヘッドが小さくなるため、通常、このモードを使用することを推奨します。

[Stitch stacks (スタックを関連付け)] チェックボックス

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

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

コレクターでモニターする Linux* Ftrace* および Android* フレームワーク・イベントを選択するには、カーネル・イベント・ライブラリーを使用します。収集されたデータは、[Timeline (タイムライン)] ペインにタスクとして表示されます。また、パフォーマンス統計を表示するため、グリッドのタスクグループのレベルを適用できます。

[Analyze GPU usage (GPU 使用率を解析)] チェックボックス (インテル® HD グラフィックスおよびインテル® Iris® グラフィックスを搭載する Linux* ターゲットのみ)

GPU 使用率を解析し、アプリケーションが GPU 依存であるか CPU 依存であるかを特定します。

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

事前定義された GPU メトリックのグループを基に、インテル® HD グラフィックスおよびインテル® Iris® グラフィックス (以下、インテル® グラフィックスと表記) からのパフォーマンス・データを解析します。

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

GPU サンプリングの間隔を指定します (ミリ秒)。

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

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

インテル® Media SDK プログラムの解析は、Linux* ターゲットでのみ利用できます。

[Disable alternative stacks for signal handlers (シグナルハンドラーに対する代替スタックの無効化)] チェックボックス (Linux* ターゲットのみ)

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

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

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

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

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

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

  • Linux* ターゲット: Java* コードのみの解析、Java* と Python* を組み合わせた解析、または Python* のみの解析

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

領域/ワークシェア構造でパフォーマンス・データをグループ化するため、アプリケーションの OpenMP* 領域をインストルメントし、インバランスなどの非効率性、ロック競合または、スケジュールのオーバーヘッド、リダクション、およびアトミック操作を特定します。このオプションを使用すると、オーバーヘッドが大きくなり、結果サイズが増加します。

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

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

テーブルから注目するカーネルを指定し、収集のオーバーヘッドを最小化する特定のカーネルを指定して、GPU in-kernel 解析を掘り下げます。必要であれば、各カーネル向けの [Instance step (サンプリング間隔)] を変更します。

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

関連情報