我如何知道 CUDA 调度程序的行为?除了在我的应用程序中通过改变网格大小、块大小等来测试它之外,是否有任何供应商提供的文档准确地解释了块的分布方式?
问问题
652 次
这取决于您正在处理的架构。
例如,在 Fermi 架构上,您有一个 GigaThread 全局调度程序,它将线程块分配给流式多处理器 (SM) 调度程序。对于每个 SM,Dual Warp 调度程序将线程安排在 32 个并行线程组中,称为 warp。
这在关于 Fermi 的 NVIDIA 白皮书中得到了很好的解释。我建议也看看这个其他文件。