インテル® C++ コンパイラー 17.0 デベロッパー・ガイドおよびリファレンス

_Offload_report

オフロード実行時間とデータ転送量の出力を制御します。この関数は、インテル® MIC アーキテクチャーにのみ適用されます。

構文

_Offload_report(integer)

引数

名前

種類

説明

integer

整数

設定可能な値は、12、または 3 です。

1: オフロード実行時間 (秒単位) を出力します。

2: 1 の情報 + CPU とコプロセッサー間のデータ転送量 (バイト単位) に関するレポートを生成します。

3: 2 の情報 + デバイスの初期化と個々の変数の転送を含むオフロード処理に関する詳細なレポートを生成します。

説明

この API を使用して、オフロード領域の実行時間と実行中に転送されたデータ量を測定できます。

この API を使用することは、OFFLOAD_REPORT 環境変数を設定するのと同じです。

OFFLOAD_REPORT 環境が設定されている場合、以下の例の 20 行目以前のオフロードはレポートされますが、20 行目から 30 行目のオフロードはレポートされません。

30 行目でレポートがオンに戻され、以降のオフロードはレポートされます。

01 int main()
02 {       
// デフォルトではレポートはオンでレベルは OFFLOAD_REPORT 値で制御される
…
10     #pragma offload target(mic) …
… 
20     _Offload_report(0);     // オフロードレポートをオフにする
21     #pragma offload target(mic) …
…
30     _Offload_report(1);     // オフロードレポートをオンに戻す
…
90 }

次の出力例は、各設定の出力形式を示したものです。これらの出力例は上記のコード例の出力ではありません。

_Offload_report(1) の出力例:

[オフロード] [MIC 0] [ファイル]            test.f90
[オフロード] [MIC 0] [行]            5
[オフロード] [MIC 0] [タグ]             Tag0
sub #1, initial pc: 12345678910
[オフロード] [MIC 0] [CPU 時間]        0.000000 (秒)
[オフロード] [MIC 0] [MIC 時間]        0.000876 (秒)

_Offload_report(2) の出力例:

[オフロード] [MIC 0] [ファイル]            test.f90
[オフロード] [MIC 0] [行]            5
[オフロード] [MIC 0] [タグ]             Tag0
sub #1, initial pc: 12345678910
[オフロード] [MIC 0] [CPU 時間]        0.000000 (秒)
[オフロード] [MIC 0] [CPU->MIC データ]   44 (bytes)
[オフロード] [MIC 0] [MIC 時間]        0.001131 (秒)
[オフロード] [MIC 0] [MIC->CPU データ]   4 (バイト)

_Offload_report(3) の出力例:

[オフロード] [MIC 0] [ファイル]            sampleC14.c
[オフロード] [MIC 0] [行]            104
[オフロード] [MIC 0] [タグ]            Tag626
[オフロード] [ホスト]  [タグ 626] [状態]  オフロード開始
[オフロード] [ホスト]  [タグ 626] [状態]  関数を初期化 __offload_entry_sampleC14_c_104sample14
[オフロード] [ホスト]  [タグ 626] [状態]  ポインターデータを送信
[オフロード] [ホスト]  [タグ 626] [状態]  CPU->MIC ポインターデータ 100
[オフロード] [ホスト]  [タグ 626] [状態]  コピーインデータを集約
[オフロード] [ホスト]  [タグ 626] [状態]  CPU->MIC コピーインデータ 0
[オフロード] [ホスト]  [タグ 626] [状態]  MIC のタスクを計算
[オフロード] [ホスト]  [タグ 626] [状態]  ポインターデータを受信
[オフロード] [ホスト]  [タグ 626] [状態]  MIC->CPU ポインターデータ 100
[オフロード] [MIC 0] [タグ 626] [状態]  ターゲット関数を開始 __offload_entry_sampleC14_c_104sample14
[オフロード] [MIC 0] [タグ 626] [変数]    inp_14_V$1  IN
[オフロード] [MIC 0] [タグ 626] [変数]    micp_14_V$2  OUT
[オフロード] [MIC 0] [タグ 626] [変数]    i  OUT
[オフロード] [MIC 0] [タグ 626] [状態]  コピーインデータを分散
[オフロード] [MIC 0] [タグ 626] [状態]  コピーアウト・データを集約
[オフロード] [MIC 0] [タグ 626] [状態]  MIC->CPU コピーアウト・データ  4
[オフロード] [ホスト]  [タグ 626] [状態]  コピーアウト・データを分散
[オフロード] [MIC 0] [CPU 時間]        0.000000 (秒)
[オフロード] [MIC 0] [CPU->MIC データ]  100 (バイト)
[オフロード] [MIC 0] [MIC 時間]        0.000173 (秒)
[オフロード] [MIC 0] [MIC->CPU データ]  104 (バイト)

PASS Sample14
Samples complete

関連情報