标签: java parallel-processing opencl aparapi
我在OpenCL platform(在Intel HD 4000上运行)上遇到以下问题,当我在内核中使用值buf[getGlobalId()] = getGlobalId()填充缓冲区时,某些值不会从设备复制回主机。有时我会[0, 1,2,3,4...]而不是[0,0,0,3,4,...]。
OpenCL platform
buf[getGlobalId()] = getGlobalId()
[0, 1,2,3,4...]
[0,0,0,3,4,...]
我尝试在内核的末尾添加localBarrie r,并显式缓冲处理,但它没有得到预期的结果。 当我将执行模式设置为CPU时,一切正常,是否有人知道这种行为的原因?
localBarrie