根据http://en.wikipedia.org/wiki/CUDA, 块1024的最大x或y维度 块64的最大z维度
这是否意味着每个块可以有1024 x 1024 x 64个线程,或者块中最多可以有1024 + 64个线程?
答案 0 :(得分:5)
限制在最近编程指南的附录G中定义,但答案是每块<512> 1024个线程总计,具体取决于您是否有费米或旧卡。
所以费米
blockDim.x * blockDim.y * blockDim.z <= 1024
和GT200 / G90 / G80 / Ion:
blockDim.x * blockDim.y * blockDim.z <= 512
请注意,其他资源限制(共享内存和寄存器)可能要求块大小小于限制,具体取决于代码复杂性。编程指南中也对此进行了详细讨论。