我正在使用启用了PC采样的nvprof对CUDA内核进行性能分析,以了解我遇到的一些延迟问题。我正在使用的GPU是P100(计算6.0)
PC采样报告由于内存依赖性,DFMA经常停止运行。 DFMA的SASS代码如下:
DFMA R22, R4, R8, R22
我要解决的问题是R8需要通过LDG.E.CI.64加载,而L2的丢失率很高。
内存依赖性停顿的定义是“由于所需资源不可用或未充分利用,或者给定类型的请求过多,因此无法进行加载/存储。”
让我感到困惑的是DFMA不是加载/存储操作,如果我正确的说停顿是由于R8上没有可用的数据,那么它应该是执行依赖性。 DFMA上的内存依赖关系停滞意味着什么?