インテル® 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

ターゲットのメモリー領域との間でデータのコピーに費やした時間。