网格管理单元如何在CUDA中工作?

时间:2015-04-15 09:57:19

标签: cuda

我正在尝试使用设备C.C 3.5及更高版本上的Hyper-Q属性进行一些实验。我发现了一些与此属性相关的硬件相关的信息。其中一个单位是电网管理单位。根据该文件http://www.nvidia.com/content/PDF/kepler/NVIDIA-kepler-GK110-Architecture-Whitepaper.pdf,该单位能够发送和暂停网格。但我的问题是,网格管理部门制定的政策是什么选择适当的网格来执行?。

感谢。

1 个答案:

答案 0 :(得分:1)

网格是与内核启动相关联的所有线程块。通常,将选择执行网格

  1. 按接收顺序(即按内核启动的顺序)<和>
  2. 当执行所需的设备资源可用时,<和>
  3. 遵守流语义
  4. 今天暂停网格可能会在有限的情况下发生

    1. debugging - 启用单GPU调试
    2. CUDA Dynamic Parallelism
    3. 据我所知,CDP网格暂停的细节尚未公布,但网格管理部门的目的是

      1. 暂停内核以释放子内核执行的资源(参见上文)
      2. 这样,通过执行(和清除)子内核启动,父内核可以再次开始前进。
      3. 最后一个必要性是由于与其他并发内核启动(通常彼此独立)不同,父内核和子内核之间存在implicit or explicit synchronization requirement