Cuda NSight Profiling-如何解决;管道繁忙“;摊位?
在使用NSight评测我的CUDA应用程序后,我在“问题效率”下看到: 单击上图面板中的帮助链接后,我在文档中找到了以下描述: 管道忙-指令所需的计算资源尚不可用Cuda NSight Profiling-如何解决;管道繁忙“;摊位?,cuda,nsight,Cuda,Nsight,在使用NSight评测我的CUDA应用程序后,我在“问题效率”下看到: 单击上图面板中的帮助链接后,我在文档中找到了以下描述: 管道忙-指令所需的计算资源尚不可用 关于找出哪些计算资源尚不可用的建议,以及为什么 您可以运行管道利用率实验来查看哪些是繁忙的。从: CUDA设备的每个流式多处理器(SM)具有许多功能 专用于执行特定任务的硬件单元。在 这些单元提供的执行管道的芯片级 warp调度程序将指令发送到。例如,纹理单元 提供执行纹理提取和执行纹理处理的功能 过滤。加载/存储单元获取数据并将其
关于找出哪些计算资源尚不可用的建议,以及为什么 您可以运行管道利用率实验来查看哪些是繁忙的。从: CUDA设备的每个流式多处理器(SM)具有许多功能 专用于执行特定任务的硬件单元。在 这些单元提供的执行管道的芯片级 warp调度程序将指令发送到。例如,纹理单元 提供执行纹理提取和执行纹理处理的功能 过滤。加载/存储单元获取数据并将其保存到内存中。 了解这些管道的使用情况,并知道距离有多近 它们是达到目标设备峰值性能的关键 用于分析执行内核的效率的信息;和 还允许识别由以下原因引起的性能瓶颈: 对某种管道的超额认购
如果我的理解是正确的,这意味着warp调度程序无法发出指令,因为管道已满。可能是因为你用了很多。@Cicada看起来像是算术上有界的。我重新安排了一些东西来改进ILP,这使寄存器的使用率从38%降到了17%,并将stall pipe busy stall降到了12%左右。谢谢你的链接。