我如何使用 CAS(比较和设置)操作

How do I use CAS (compare and set) operation

如何从多个 GPU 线程读取-修改-写入同一个变量?在 C++AMP 中我使用了标准库的 compare-and-set 函数,但是我没有在 AleaGPU 中找到一个例子。

我知道目标是避免这样的事情,但我会说这对我的代码来说非常必要,但无需深入了解细节。

AleaGPU中有一个API:http://www.aleagpu.com/release/3_0_3/api/html/64c9ca47-2e8e-265b-d968-15345e374320.htm

用法说明如下:http://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#atomiccas