【发布时间】:2020-03-31 12:08:51
【问题描述】:
我只想为每个 warp 选择一个线程进行一些操作。
例如,让我们从(64, 1, 1) 的一维块暗度开始。据我了解,考虑到经纱大小为 32,这将导致两个经纱。在这种情况下,我可以使用以下代码访问每个经纱一个线程:
if(threadIdx.x % 32 == 0) { ... }
首先,这是否有意义,因为我不确定我们是否知道线程是如何映射到硬件上的 warp 的?
其次,对于(32, 32, 1) 的二维块暗度如何实现这一点?现在这里简单的% 32 不起作用,因为二维中的线程索引会不同?
谢谢。
【问题讨论】:
标签: cuda