【问题标题】:New issue stall reasons in NVIDIA Nsight Visual Studio Edition 4.1 RC1NVIDIA Nsight Visual Studio Edition 4.1 RC1 中的新问题停止原因
【发布时间】:2014-09-23 21:45:50
【问题描述】:

NVIDIA Nsight Visual Studio Edition 4.1 RC1中,warp问题停顿原因分为9种,而不是4.0版本中的6种。看样子,去掉了“Data Requests”,增加了“Memory Throttle”、“Memory Dependency”、“Constant Miss”。

但是,NVIDIA Nsight Visual Studio Edition 4.1 用户指南中的Issue Stall Reasons section(通过单击 Issue Stall Reasons UI 右上角带有白色问号的蓝色图标重定向到的同一指南)没有已从 NVIDIA Nsight Visual Studio Edition 4.0 用户指南中的the same section 更新。

我想知道新问题停滞的原因是什么,以及减少这些问题的一些方法。

4.1:

4.0:

【问题讨论】:

    标签: visual-studio cuda profiling gpgpu nsight


    【解决方案1】:

    在 Nsight 4.1 中删除了以下原因:

    数据请求已被删除。在 Nsight

    在 Nsight 4.1 中添加了以下原因:

    Memory Throttle - 当由于内存数据路径中的资源不足而被阻止发出指令时,warp 断言内存限制停止。如果这个原因很高,请尝试解决导致指令重放的内存合并问题(数据分歧)或尝试将内存访问聚合为向量访问。在 CC5.x 设备上,如果线程发出多个内存存储然后退出,这个原因也可能发生在内核末尾。

    内存依赖 - 当由于依赖内存或纹理依赖而无法发出下一条指令时,warp 断言内存依赖停止。如果这个原因很高,那么尝试 (a) 改进内存合并,(b) 改进内存级别的并行性,(c) 将频繁访问的数据移到更靠近 SM 的位置(例如到共享内存中),(d) 尝试计算数据而不是加载数据,或 (e) 在 SM3.5 上尝试使用 LDG。

    Constant Miss - 如果 warp 尝试访问一个常量并且该常量不在缓存中,则一个 warp 断言一个常量未命中停止。如果这个原因很高,请尝试将内核使用的常量分组到常量内存的同一区域(将声明彼此靠近),尝试将常量移动到全局内存,或尝试计算常量。

    Pipe Busy - 如果warp 下一条指令所需的数据路径繁忙且warp 无法发出,则warp 断言管道繁忙停顿。如果这个原因很高,请查看管道利用率实验图表并尝试减少任何具有高利用率的管道。避免低吞吐量指令也可能有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-11-19
      • 1970-01-01
      • 1970-01-01
      • 2012-03-17
      • 2013-01-30
      • 1970-01-01
      • 2021-02-26
      相关资源
      最近更新 更多