cuda原子添加可见性

cuda原子添加可见性,cuda,synchronization,gpu-atomics,Cuda,Synchronization,Gpu Atomics,在CUDA中,原子操作的结果对执行原子操作的同一块中的其他扭曲的线程是否立即可见?在非原子操作的情况下,我知道在调用\uuu syncthreads()之前,结果可能不可见。是的,根据定义,在对同一地址执行原子操作的任何其他线程访问同一值之前,原子操作已经完成并可见 但是,如果其他线程同时通过非原子访问访问同一地址,则可能存在争用情况,因此您仍然必须小心编写正确的并发代码

在CUDA中,原子操作的结果对执行原子操作的同一块中的其他扭曲的线程是否立即可见?在非原子操作的情况下,我知道在调用
\uuu syncthreads()
之前,结果可能不可见。

是的,根据定义,在对同一地址执行原子操作的任何其他线程访问同一值之前,原子操作已经完成并可见

但是,如果其他线程同时通过非原子访问访问同一地址,则可能存在争用情况,因此您仍然必须小心编写正确的并发代码