インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス
このトピックは、インテル® メニー・インテグレーテッド・コア (インテル® MIC) アーキテクチャーをターゲットとする場合にのみ適用されます。
一部の CPU API には同等のオフロード API があります。オフロードバージョンでは、ターゲットの型とターゲット番号の 2 つの引数を指定します。引数の定義を次に示します。
target_type |
target_type はスタティックです。次の事前に定義されたデフォルトの 1 つを使用することを推奨します。 DEFAULT_TARGET_TYPE |
target_number |
ターゲットの特定のコプロセッサー。 値が次のように解釈される式。
|
次の offload.h ヘッダーファイルは、コプロセッサーの環境に影響する、CPU から可能な関数呼び出しをすべて定義します。
このトピックでは、例として CPU API omp_set_num_threads およびそのオフロードバージョンを使用します。CPU API に関する詳細は、下記の関連情報を参照してください。
CPU API |
---|
|
オフロード API |
---|
|
#include "offload.h"
#include "omp.h"
#include <stdio.h>
int main()
{
int value, result;
value = 66;
omp_set_num_threads_target(TARGET_MIC, 0, value);
#pragma offload target(mic) out(result)
#pragma omp parallel
#pragma omp master
result = omp_get_num_threads();
printf("Number of threads on target %d\n", result);
if (result != value) {
printf("failed1 result=%d, value=%d\n", result, value);
return 1;
}
return 0;
}