这个问题与以下问题密切相关this one https://stackoverflow.com/questions/8315931/does-writing-the-same-value-to-the-same-memory-location-cause-a-data-race,但我的属于CUDA世界。
我的内核中有多个线程可以在同一全局内存位置写入完全相同的值。这一直工作得很好,但我担心它可能是假的,到目前为止我只是幸运。
我的工作流程中是否存在内存损坏或意外行为的可能性(由于数据竞争、缓存同步等)?
我的内核中有多个线程可以在同一全局内存位置写入完全相同的值。
与一些评论相反,这是安全的。我所说的安全是指写入的值将显示在该全局内存位置中。不可能不发生写入,也不可能出现其他一些虚假数据损坏。汤姆的回答在这里 https://stackoverflow.com/questions/5953955/concurrent-writes-in-the-same-global-memory-location适用于此。
If 不同的正在写入值,那么其中一个值将最终出现在该位置,但哪个值未定义。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)