Gen*_*tek 1 multithreading cuda gpu gpgpu thread-safety
我有一个cuda内核,当从单个CPU线程调用时,它可以正常工作。但是,当从多个CPU线程(〜100)调用同一内核时,大多数内核似乎根本不执行,因为结果全为零。有人可以指导我如何解决此问题吗?
在当前版本的内核中,我在内核调用结束时使用cudadevicesynchronize()。在这种情况下,在cudaMalloc()和内核调用之前添加sync命令会有帮助吗?
还有另一件事需要澄清。例如,如果两个CPU线程执行相同的cudaMalloc()命令,则后者会覆盖GPU内存中的前者还是会创建自己的内存?
在此先感谢您的帮助
| 归档时间: |
|
| 查看次数: |
2277 次 |
| 最近记录: |