1
在CUDA PTX,有持有线程的经指数特殊寄存器:%warpid
。现在,规范说:在CUDA PTX中,%warpid是什么意思呢?
注意
%warpid
是挥发性的,读取时的时刻返回一个线程 的位置,但其价值可能会执行, 例如在发生变化,由于以下抢占线程的重新安排。
嗯,什么位置是什么?它不应该是块内的位置,例如对于一维网格%tid.x/warpSize
?它是否是SM中的一个槽口(例如warp调度程序或某个内部队列)?我很困惑。
动机:我想省去计算%tid.x/warpSize
以及通过使用这个特殊寄存器释放寄存器的麻烦。
Emboldend实际的答案。而且 - 我确实阅读过这部分内容,但事实并非如此。在这种情况下,我真的不明白他们为什么称它为%warpid而不是'%warpsmslot'或'%warpidinsm'或'%warpslot'等。 – einpoklum