インテル® VTune™ プロファイラー・ユーザーガイド
インテル® VTune™ プロファイラーは、カスタムコレクターやターゲット・アプリケーションで外部収集されたパフォーマンス統計と、インテル® VTune™ プロファイラーの解析を統合できます。そのためには、収集したカスタムデータを事前定義された構造の csv ファイルとして提供し、このファイルをインテル® VTune™ プロファイラーの結果ディレクトリーに保存します。
インテル® VTune™ プロファイラーは、次のようなデータをロードして処理することができます。
インテル® VTune™ プロファイラーが csv ファイルのカスタム統計を解釈できるように、ファイル形式が次の要件を満たしていることを確認してください。
csv のファイル名は、次の形式に従って、カスタムコレクターがデータを収集したホスト名を指定する必要があります。
ファイル名形式: [user-defined]-hostname-<hostname-of-system>.csv
説明:
[user-defined] はオプション文字列です。例えば、収集されたデータのタイプを説明する文字列です。
-hostname- は必須テキストであり、ホスト名をそのまま指定します。
<hostname-of-system> はデータが収集されるシステムの名前です。カスタムコレクターを使用する場合、VTUNE_HOSTNAME 環境変数からホスト名を取得できます。既存の結果にインポートする CSV ファイルを作成する場合、[サマリー] ウィンドウにある [収集とプラットフォーム情報] の [コンピューター名] で必要なホスト名を参照するか、または vtune -r <result> -R summary で対応する vtune サマリーレポートを確認します。
例: phases-hostname-octagon53.csv
csv ファイルでホスト名が指定されていない、または指定されたホスト名が正しくない場合、インテル® VTune™ プロファイラーはインポートされたデータを表示しますが、次の制限があります。
イベント・タイムスタンプは、UTC 形式で示されます。
グローバルデータ (特定のスレッド/プロセスに属しない) のみが表示されます。
間隔データは、スレッド ID に関連付けることもできます。インテル® VTune™ プロファイラーは、特定のスレッドにバインドされていないデータ (csv ファイルに TID 値がない) データをフレームとして表示します。スレッドにバインドされたデータ (csv ファイルに TID 値がある) は、タスクとして表示されます。
インポートされた間隔値は、カラムの順序が重要な 5 つのカラムを使用します。
name,start_tsc.[QPC|CLOCK_MONOTONIC_RAW|RDTSC|UTC],end_tsc,[pid],[tid]
カラム名 |
説明 |
---|---|
name |
イベント名。 |
start_tsc.[QPC|CLOCK_MONOTONIC_RAW|RDTSC|UTC] |
イベント開始タイムスタンプ。このカラム名には、タイムスタンプ・カウンターのタイプを示す QPC|CLOCK_MONOTONIC_RAW、RDTSC または UTC サフィックスが付加されます。
|
end_tsc |
イベント終了タイムスタンプ。 |
pid |
必要に応じてプロセス ID を指定します。次の条件をすべて満たす稀なケースを除いて、このフィールドに値が存在しなくても結果のインポートには影響しません。
このフィールドをデータ内の空の値とするか、ファイルヘッダーとデータの両方から完全に除外できます。 |
tid |
必要に応じてスレッド ID を指定します。このフィールドに値が指定されると、間隔はタスクとして解釈されます。そうでない場合、間隔はフレームとして解釈され表示されます。 このフィールドをデータ内の空の値とするか、ファイルヘッダーとデータの両方から完全に除外できます。 |
2 種類の専用値をインポートできます。
csv ファイルで .COUNT サフィックスが指定された累積データ型 (例: 距離、ハードウェア・イベント・カウントなど)
csv ファイルで .INST サフィックスが指定された瞬間データ型 (例: 消費電力、温度など)
次の形式で指定します。
tsc.[QPC|CLOCK_MONOTONIC_RAW|RDTSC|UTC],CounterName1.COUNT|INST[,CounterName2.COUNT|INST],[pid],[tid]
カラム名 |
説明 |
---|---|
tsc.[QPC|CLOCK_MONOTONIC_RAW|RDTSC|UTC] |
イベント開始タイムスタンプ。このカラムには、タイムスタンプ・カウンターを示す QPC|CLOCK_MONOTONIC_RAW、RDTSC、または UTC サフィックスがあります。
|
CounterName1 |
イベント名。カウンターはそれぞれのカラムを持ちます。COUNT サフィックスは累積カウンター値を指定する際に使用します。INST サフィックスは瞬間カウンター値を指定する際に使用します。 |
pid |
必要に応じてプロセス ID を指定します。次の条件をすべて満たす稀なケースを除いて、このフィールドに値が存在しなくても結果のインポートには影響しません。
このフィールドをデータ内の空の値とするか、ファイルヘッダーとデータの両方から完全に除外できます。 |
tid |
必要に応じてスレッド ID を指定します。このフィールドに値が指定されると、間隔はタスクとして解釈されます。そうでない場合、間隔はフレームとして解釈され表示されます。 このフィールドをデータ内の空の値とするか、ファイルヘッダーとデータの両方から完全に除外できます。 |
各 csv ファイルにはテーブルが 1 つだけ含まれることを確認してください。複数のテーブルをロードする必要がある場合、ファイルごとに 1 つのテーブルを持つ複数の csv ファイルを作成します。
区切り文字としてカンマを使用します。
RDTSC、UTC、またはパフォーマンス・カウンター (Windows* では QueryPerformanceCounter、Linux* では CLOCK_MONOTONIC_RAW) を使用して、イベントのタイムスタンプを指定します。