我的内核在 CC 3.0 (Kepler) 上的性能比 CC 2.0 (Fermi) 差。在 Nsight 分析器中,Warp Issue Efficiency
图表显示 60% 的时间没有符合条件的扭曲,Issue Stall Reasons
图表显示其中 60% 是由于“其他”造成的。
我想知道其他问题停滞的原因是什么,以及我可以做些什么来减少它们。
CUDA 5.0。/Nsight 3.0。RC / CC 3.0。
在 Nsight Visual Studio Edition 3.0 CUDA Profiler 中,问题效率显示了扭曲停止原因的饼图。停顿的原因是指令获取、执行依赖、数据请求、纹理、同步和其他。
对于 Compute Capability 3.* 设备,Other 类别是由于以下原因导致活动扭曲停止的时间百分比:
对于 Compute Capability 5.* 和 6.* 设备,Other 类别是由于以下原因导致活动扭曲停止的时间百分比:
对于 5.* 和 6.*,尤其是 gp100,如果内核达到每个 warp 调度程序 32 个 warp,最后一个原因可能非常高(~75%)。
这些停顿原因归入另一类,因为很难确定开发人员可以采取哪些措施来解决这些问题。