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

CPU でのバックアップ実行の制御

このトピックは、インテル® グラフィックス・テクノロジーをターゲットとする場合にのみ適用されます。

ヘテロジニアス・アプリケーションは、オフロードをサポートするターゲットとインテル® グラフィックス・テクノロジー・ドライバーが利用可能で適切に初期化されている場合、ターゲットでオフロードコードを実行します。これらの条件を満たさない場合、同じソースコードからコンパイルされた CPU コードをホストで実行できます。

GFX_CPU_BACKUP 環境変数は、ターゲットが利用できない場合、ホスト上でヘテロジニアス・コードを実行するかどうかを制御します。

offload プラグマの if 節が false と評価されると、ターゲットの状態に関係なく、コードはホスト上で実行されます。

offload プラグマの if 節が指定されていないか true と評価され、オフロードをサポートしているターゲットおよびインテル® グラフィックス・テクノロジー・ドライバーが利用可能で正しく初期化されている場合、コードはターゲット上で実行されます。それ以外の場合、ホストのバックアップ実行は GFX_CPU_BACKUP の値に依存します。

ホストで実行させないようにするには、GFX_CPU_BACKUP を 0 に設定します。これは、ターゲットが利用できないと、アプリケーションは実行に失敗します。

ターゲットが利用できないときにホストで実行するには、GFX_CPU_BACKUP を 1 に設定します。デフォルトではこの変数は 1 に設定されるため、コードはホスト上で実行されます。