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

ペイン: タイムライン

[タイムライン] ペインを使用して、スレッドまたはプラットフォーム・レベルでメトリックを時間経過とともに視覚化し、データのパターン、異常、傾向を識別します。

詳細な情報を取得するため、注目する位置でデータのカーソルを移動、ズームイン、およびフィルター処理します。通常、[タイムライン] ペインはウィンドウの下にありますが、時間経過でメトリックの分布に焦点を絞ったビューでは、ウィンドウの上部または中央に表示されることがあります。[タイムライン] ペインに表示されるデータは、解析のタイプとビューポイントによって異なります。

[タイムライン] ペインには、次のデータが表示されます。

[タイムライン] ペイン

ツールバー。ナビゲーション制御を使用して注目するエリアにズームイン/ズームアウトできます。タイムラインの制御の詳細は、「タイムライン・ビューの管理」を参照してください。

プラットフォーム・メトリック。解析タイプに応じて、[タイムライン] ペインには、GPU エンジン使用OpenCL* アプリケーションの計算キュー帯域幅データ電力消費など、プラットフォーム固有のメトリックが表示される領域があります。プラットフォーム・メトリックの詳細な解析は、[プラットフォーム] ウィンドウの [タイムライン] ペインで参照できます。

グループ化レベルごとのアプリケーション・メトリック。ビューポイントによって、データはスレッド、モジュール、プロセス、コア、パッケージおよび解析実行中にデータコレクターによって監視されるその他の単位で表示されることがあります。ほとんどのビューポイントでは、スレッドのグループ化がデフォルトです。ビューポイントによっては、[凡例] (レジェンド) のドロップダウン・メニューでグループ化レベルを変更できます。

スレッド領域に表示される CPU 時間メトリック値は、特定のスレッドに適用され、スレッドの最大利用率は 100% です。例えば、94.2% を超える CPU 時間利用率を選択すると、スレッドは 94.2% の時間アクティブで、5.8% 待機していたことになります。

選択されたメトリック。最も典型的なメトリックに関連するデータは、時間経過におけるアプリケーション全体のパフォーマンス (CPU 利用率や GPU HW メトリックなど)、またはシステム全体の実行 (GPU 利用率など) を示す個別の行に表示されることがあります。メトリックの詳しい説明は、パフォーマンス・メトリックのリファレンスを参照してください。

[タイムライン] ペインの CPU 利用率メトリックは、スレッドごとの CPU 時間の合計として計算されます。100% は CPU あたりの最大利用率です。例えば、次の図の例で選択された範囲では、4 つのうち 1.91 個の論理 CPU コアが使用され (すべての CPU が 100% ならば 191% は 1.91)、0.23 個の CPU がアプリケーション・スレッドのオーバーヘッドまたはスピンに使用されています。これは、アプリケーションが 1.68 個の CPU のみを効率良く使用していることを意味します。

凡例 (レジェンド)。タイムライン上に表示されるデータのタイプ。対応するチェックボックスをオン/オフにすることで、タイムラインに表示される任意のタイプのデータをフィルターイン/フィルターアウトします。ビューに表示されるパフォーマンス・メトリックのリストは、選択した解析タイプとビューポイントによって異なります。

インテル® VTune™ プロファイラーは、タイムライン上に表示されたデータを分類する特殊なインジケーターを使用します。

  • マーカー。カラーマーカーは、特定のタスク/フレーム/イベントなどが実行されたタイムライン上の領域を示します。マーカーにカーソルを移動すると、選択した要素の実行に関する詳細が表示されます。次のマーカーが利用できます。

    • フレームマーカーは、フレームの持続時間を示します。フレームを使用するアプリケーションで使用できます。

    • ユーザー・タスク・マーカーは、特定の時間に実行されたタスクの詳細情報を示します。タスク API を使用するアプリケーションで使用できます。

    • CPU サンプルマーカーは、ハードウェア・イベントベース・スタック・サンプリング収集中にサンプルがプロファイルされた正確な位置を示します。マーカーの密度からデータの解像度を予測します。例えば、インテル® VTune™ プロファイラーは精度がサンプル数に依存するサンプリング・データを補正します。この場合、CPU サンプルマーカーは、スレッドの散発的な CPU 利用率を特定する正確な情報をもたらします。

      サンプルマーカーは、フィルター処理とスピン/オーバーヘッド時間が計算にどのように影響するか理解するのに役立ちます。インテル® VTune™ プロファイラーは、サンプリング全体をフィルター処理または分類するため、時間フィルターを適用する場合、サンプル位置が選択した時間間隔に入っているかどうか知ることが重要です。サンプルメトリックをフィルター処理または分類する場合、サンプリング・データに対する補正は行われません。

    • 垂直同期の VSync マーカー。アプリケーションが垂直同期を使用する場合、VSync タイムライン・オプションを選択し、VSync イベントとアプリケーションのフレーム間での補正を予測し、VSync イベントが欠落しているフレームを特定してその理由を調査できます。

    • サンプリング・ポイント・マーカーは、電力解析中にデータサンプルが読み取られた位置です。その位置にカーソルを移動すると、読み取られた値が表示されます。

    • タイムライン上でプロセッサーのウェイクアップを示す、電力解析向けのウェイクアップ・オブジェクト・マーカー。黄色いマーカーにカーソルを移動すると、選択したウェイクアップが発生した時間とオブジェクト名が表示されます。

    • 低速タスクマーカーは、([サマリー] ウィンドウで設定されたしきい値に従って) 低速として分類されるタスクの期間 (I/O 待機、Ftrace、Atrace など) を示します。

    • I/O API マーカー。

  • コンテキスト・スイッチ。スレッドがコンテキスト・スイッチに費やした時間です。カーソルをコンテキスト・スイッチ領域に移動すると、持続時間、理由、影響する CPU の詳細を見ることができます。[コールスタック] ペインで [コンテキスト・スイッチ時間] オプションを選択して、[タイムライン] ペインでコンテキスト・スイッチを選択すると、[コールスタック] ペインに先行するスレッド実行クォンタムが中断されたシーケンスが表示されます。

  • 遷移。あるスレッドが別のスレッドにシグナル受信を待機していることを通知するスレッド間の実行フロー。例えば、あるスレッドが別のスレッドが保持するロックを取得しようとし、それが解放されたと想定します。解放は待機スレッドへのシグナルのように機能します。遷移にカーソルを合わせると、詳細が表示されます。注目する遷移をダブルクリックして、ソースコードを開きます。

  • メモリー転送。ホストシステムから GPU へデータを転送する OpenCL* ルーチンは、計算キューで影付きの斜め格子で示されます。

  • 同期。同期に関連する OpenCL* ルーチンは、計算キューで影付きの縦縞で示されます。

  • スケーリング指標GPU メトリックと帯域幅グラフでは、インテル® VTune™ プロファイラーはグラフのスケーリングに使用された Y 軸の最大値を示します。値の色は、凡例の関連するメトリックの色に対応します。例えば、GPU L3 キャッシュミスおよびメモリー・アクセス・メトリックでは、選択されたスケールの最大 Y 値は、GPU メモリー読み取り帯域幅および GPU メモリー書き込み帯域幅で 20.153GB/秒、GPU L3 ミスでは 521,849,224.729 ミス/秒です。

ポップアップ。グラフの要素にカーソルを移動すると、選択した時間のメトリック/プログラム単位に関連する統計が表示されます。

OpenCL* ソフトウェア・テクノロジーを使用するアプリケーションの GPU 解析では、[グラフィックス] ウィンドウの [タイムライン] ペインには次のタブがあります。

インテル® SoC Watch で電力解析 (英語) データを収集する機能は、Android*、Windows*、および Linux* デバイスで利用可能であり、インテル® System Studio でのみ提供されます。インテル® SoC Watch の結果をインポートして表示する機能は、すべてのバージョンのインテル® VTune™ プロファイラーでサポートされています。

関連情報