このトピックは、インテル® メニー・インテグレーテッド・コア (インテル® MIC) アーキテクチャーにのみ適用されます。
デフォルトでは、offload プラグマを使用すると、プラグマに到達した CPU スレッドは次の文へ進む前にオフロードの完了を待機します。 CPU がオフロードを開始してすぐに次の文へ進むように指定することで、非同期オフロード計算を実行できます。
非同期オフロード計算を指定するには、offload プラグマで signal 節を指定して計算を開始し、続いてオフロード計算の完了を待つ offload_wait プラグマを使用します。
次の例では、別の CPU スレッドを追加することなく、CPU はオフロード計算を行い、同時に処理を続行します。
char signal_var;
do {
#pragma offload target(mic) signal(&signal_var)
{
long_running_mic_compute();
}
concurrent_cpu_activity();
#pragma offload_wait (&signal_var)
} while (1);