访问数组时的OpenCL转换

时间:2013-10-26 13:26:02

标签: opencl

我正在阅读Apple的OpenCL reduction example,并注意到有一个用于访问数组元素的宏:

#define LOAD_GLOBAL_F1(s, i) \
((__global const float*)(s))[(size_t)(i)]

它的使用方式如下:

float a = LOAD_GLOBAL_F1(input, i);

input类型为__global const float *isize_t

为什么float a = input[i]没有在这里使用?谢谢!

1 个答案:

答案 0 :(得分:0)

在此示例中,代码代码不是按照您的建议使用宏编写的。为什么使用宏是任何人的猜测:代码从其他地方重用;基于C的内核测试框架;代码作者感觉它提高了可读性;等等。