Apple の OpenCLリダクションの例を読んでいて、配列要素にアクセスするためのマクロがあることに気付きました。
#define LOAD_GLOBAL_F1(s, i) \
((__global const float*)(s))[(size_t)(i)]
次のように使用されました。
float a = LOAD_GLOBAL_F1(input, i);
はinput
タイプ__global const float *
で、i
はsize_t
です。
なぜfloat a = input[i]
ここで使わないのですか?ありがとう!