インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス
このトピックは、インテル® グラフィックス・テクノロジーをターゲットとする場合にのみ適用されます。
オフロードランタイムによって管理されるタイマーは、オフロードセッションの時間を分析し、効率良くチューニングを行う上で役立ちます。例えば、明らかにオフロードのオーバーヘッドが原因であり、コンパイル済みコードをチューニングしても効果が得られないことがタイマーにより分かることがあります。
GFX_SHOW_TIME を 1 に設定すると、実行の最後に次のような測定結果が出力されます。
GFX performance timers with non-zero value (milllsecond,activation counter):
Offload Total = 3.94, 3
Device Creation = 42.10, 1
Kernel Creation = 0.09, 1
Kernel Execution = 2.53, 1
Kernel Execution on Device = 0.03, 1
Buffer Creation = 0.25, 4
Buffer Destruction = 0.03, 3
Buffer Reading = 0.08, 1
Buffer Writing = 0.39, 4
Iteration Space Splitting = 0.02, 1
Argument Setup = 0.62, 2
ELF Parsing = 0.12, 1
Program Loading = 14.31, 1タイマー出力を無効にするには、GFX_SHOW_TIME を空にするか 0 を設定します。
次の表は、各タイマーの説明です。
タイマー名 |
説明 |
|---|---|
Device Creation |
ランタイムとデバイスの初期化に費やした時間。 |
Offload Total |
すべてのオフロードセッションで費やした合計時間。 |
Program Loading |
JIT コンパイル時間を含む、プログラムのすべてのカーネルのロードに費やした合計時間。 |
Kernel Creation |
カーネルの作成に費やした合計時間。JIT コンパイル時間は含みません。 |
Kernel Execution |
すべてのカーネル実行で費やした合計時間。完了通知を受け取るまでカーネルをキューに置くことで測定されます。 |
Kernel Execution on Device |
インテル® グラフィックス・テクノロジーのドライバースタックによって測定されたカーネル実行で費やした合計時間。この値には待機中のイベントとその他のオーバーヘッドが含まれないため、通常 Kernel Execution の値よりも小さくなります。 |
Buffer Creation、Buffer Destruction |
ターゲットのメモリー領域の割り当てと解放に費やした時間。 |
Buffer Reading、Buffer Writing |
ターゲットのメモリー領域との間でデータのコピーに費やした時間。 |