インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス
変数または関数を共有します。このキーワードは、インテル® MIC アーキテクチャーにのみ適用されます。
_Cilk_shared type variable(s) _Cilk_shared type func_def |
宣言する変数の型。
1 つまたは複数の変数。
関数定義または宣言。
_Cilk_shared と変数を使用すると、変数を共有メモリーに割り当てます。
_Cilk_shared と関数定義または宣言を使用すると、関数が CPU とコプロセッサーで利用できるようになります。
共有宣言:
_Cilk_shared int x, y, z;
共有 typedef:
typedef _Cilk_shared str_type shr_str_type;
shr_str_type a;
p は共有 int のポインターです (ポインターは共有されません):
int _Cilk_shared *p;
p は共有メモリーです:
int * _Cilk_shared p;
共有関数定義:
_Cilk_shared void func() {
x = y + z;
}
共有関数宣言:
_Cilk_shared int bar();
この属性を複数の宣言に適用するには、pragma offload-attribute を使用します。
#pragma offload_attribute(push, _Cilk_shared)
#include <math.h>
void function_1();
void function_2();
#pragma offload_attribute(pop)
void function_3();
int main(){
_Cilk_offload function_1();
function_3();
_Cilk_offload function_2();
}
_Cilk_shared int bar();