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

qoffload、Qoffload

オフロードのモードを指定します。または、オフロードの言語構造を無視するようにコンパイラーに指示します。このオプションは、インテル® Xeon Phi™ 製品をターゲットとする場合にのみ適用されます。/Qoffload- および /Qoffload:none オプションはインテル® グラフィックス・テクノロジーでも利用できます。

アーキテクチャーの制限

キーワード mandatory および optional: インテル® Xeon Phi™ 製品をターゲットとする場合にのみ利用できます。

/Qoffload- および /Qoffload:none: インテル® Xeon Phi™ 製品をターゲットとする場合、インテル® グラフィックス・テクノロジーをターゲットとするインテル® 64 アーキテクチャー、または IA-32 アーキテクチャーで実行するインテル® グラフィックス・テクノロジーをターゲットとする場合のみ利用できます。

構文

Linux*:

-qoffload[=keyword]

-qno-offload

macOS*:

なし

Windows*:

/Qoffload[:keyword]

/Qoffload-

引数

keyword

オフロードのモードを指定します。または、オフロードを無効にします。設定可能な値は以下のとおりです。

none

オフロードの言語構造を無視するようにコンパイラーに指示します。コンパイラーによって警告が発行されます。オプションの否定形と同じです。

mandatory

オフロードが必須であることを指定します。ターゲットが利用できない場合、次のいずれかが発生します。

  • offload プラグマで status 節が指定されていない場合、プログラムは実行に失敗してエラーメッセージを出力します。

  • status 節が指定された場合、プログラムは CPU で実行を継続します。

optional

オフロードがオプションであることを指定します。ターゲットが利用できない場合、プログラムはターゲットではなく CPU で実行されます。

デフォルト

mandatory

コンパイラーはオフロード言語構造を認識します。-qoffload (Linux*) または /Qoffload (Windows*) が keyword なしで指定された場合、デフォルトは mandatory です。

説明

このオプションは、オフロードのモードを指定します。または、オフロードの言語構造を無視するようにコンパイラーに指示します。

-q[no-]offload は、古いオプション -[no-]offload の後継オプションです。

インテル® グラフィックス・テクノロジーでは、オフロードの言語構造を無視するようにコンパイラーに指示する /Qoffload- または /Qoffload:none オプションのみ指定できます。デフォルトでは、インテル® グラフィックス・テクノロジーのオフロードは optional です。

コマンドラインで -qoffload (Linux*) または /Qoffload (Windows*) オプションが指定されていない場合、offload プラグマが処理されます。

コマンドラインで次のいずれかのオプションが指定された場合、offload プラグマは無視されます。

ただし、[q または Q]openmp オプションが指定された場合、offload プラグマが認識されるか無視されるかに関係なく、プロセッサー制御用の OpenMP* プラグマ (例えば omp target) が認識されます。

[Q]offloadkeyword mandatory または optional が指定された場合、offload プラグマが処理されます。

offload プラグマで status 節が指定された場合、ランタイムの動作に影響を与えます。

IDE オプション

Visual Studio*: [Code Generation [Intel C++] (コード生成 [インテル® C++])] > [Offload Constructs (オフロード構造)]

Eclipse*: [Language (言語)] > [Offload Constructs (オフロード構造)]

Xcode*: なし

代替オプション

なし

関連情報