2

我正在为 OpenCL 使用原子操作。相同的代码适用于英特尔 CPU,但在 Nvidia GPU 上出错。我为 32 位和 64 位都启用了 Atomics。

     int cidx=idx%10;

     int i=1;
     C[idx]=In1[idx] & In2[idx];
     atomic_add(R,i);

这只是整体代码的一部分。它在 Nvidia Quadro GPU 上运行时出现构建错误“不支持的操作”,而在 Intel i3、Xeon 和 AMD 处理器上运行良好。

4

1 回答 1

0

atomic_add 没有出现在 OpenCL 1.0 中,它是在规范的更高版本中添加的。您可能在两种不同的实现上运行,它们符合不同的 OpenCL 版本。

于 2013-06-03T13:49:28.037 回答