【发布时间】:2013-02-01 04:14:57
【问题描述】:
我如何知道 CUDA 调度程序的行为?除了在我的应用程序中通过改变网格大小、块大小等对其进行测试之外,是否有任何供应商提供的文档准确地解释了块的分布方式?
【问题讨论】:
我如何知道 CUDA 调度程序的行为?除了在我的应用程序中通过改变网格大小、块大小等对其进行测试之外,是否有任何供应商提供的文档准确地解释了块的分布方式?
【问题讨论】:
这取决于您正在处理的架构。
例如,在 Fermi 架构上,您有一个 GigaThread 全局调度程序,它将线程块分配给流式多处理器 (SM) 调度程序。对于每个 SM,Dual Warp 调度程序将线程调度为 32 个并行线程组,称为 warp。
这在NVIDIA White Paper on Fermi 中有很好的解释。我建议也看看这个其他document。
【讨论】: