cuda 内核函数中的多线程访问变量是如何处理
答案:1 悬赏:10 手机版
解决时间 2021-02-06 11:33
- 提问者网友:眉目添风霜
- 2021-02-05 11:39
cuda 内核函数中的多线程访问变量是如何处理
最佳答案
- 五星知识达人网友:冷風如刀
- 2021-02-05 12:33
你好,
楼主是说block级的同步吗?CUDA没有提供这样的函数,因为一是这种操作太耗时间,二是凡是这种操作都可以以其他方式解决。CUDA提供了一下两个同步函数:
__syncthreads(); 用来同步每个block内的线程,用于kernel当中。
cudaDeviceSyncronize(); 用来同步设备上所有之前的操作。在调用cudaStream或者多个GPU的时候需要用到这个函数来保证每个stream或每个GPU运行到同一点。
楼主是说block级的同步吗?CUDA没有提供这样的函数,因为一是这种操作太耗时间,二是凡是这种操作都可以以其他方式解决。CUDA提供了一下两个同步函数:
__syncthreads(); 用来同步每个block内的线程,用于kernel当中。
cudaDeviceSyncronize(); 用来同步设备上所有之前的操作。在调用cudaStream或者多个GPU的时候需要用到这个函数来保证每个stream或每个GPU运行到同一点。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯