【发布时间】:2016-10-04 07:00:18
【问题描述】:
为了衡量 CUDA 程序的指标/事件,我尝试使用如下命令行:
nvprof --metrics <<metric_name>>
我还在 Visual profiler nvvp 上测量了相同的指标。我发现我得到的值没有差异。
当我选择像 achieved_occupancy 这样的指标时,我注意到输出有所不同。但这会随着每次执行而变化,这可能就是我每次运行它时得到不同结果的原因,无论我使用的是nvvp 还是nvprof。
问题:
我的印象是nvvp 和nvprof 完全一样,而nvvp 只是在nvprof 之上构建的一个GUI,以便于使用。但是我得到了这个建议:
始终使用视觉分析器。永远不要使用命令行。
另外,this question 说:
我不想使用命令行分析器,因为我需要全局加载/存储效率、回放和 DRAM 利用率,这些在可视分析器中更加明显。
除了像achieved_occupancy 这样的“动态”指标外,我从未注意到结果有任何差异。那么,这个建议有效吗? nvprof 的工作方式是否存在某种缺陷?我想知道使用可视化分析器相对于命令行表单的优势(如果有的话)。
更具体地说,是否存在nvprof 给出错误结果的指标?
注意:
【问题讨论】:
标签: cuda gpu nvidia nvvp nvprof