【问题标题】:Is there any difference in the output of nvvp (visual) and nvprof (command line)?nvvp(视觉)和nvprof(命令行)的输出有什么区别吗?
【发布时间】:2016-10-04 07:00:18
【问题描述】:

为了衡量 CUDA 程序的指标/事件,我尝试使用如下命令行:

nvprof --metrics <<metric_name>>

我还在 Visual profiler nvvp 上测量了相同的指标。我发现我得到的值没有差异。

当我选择像 achieved_occupancy 这样的指标时,我注意到输出有所不同。但这会随着每次执行而变化,这可能就是我每次运行它时得到不同结果的原因,无论我使用的是nvvp 还是nvprof

问题:

我的印象是nvvpnvprof 完全一样,而nvvp 只是在nvprof 之上构建的一个GUI,以便于使用。但是我得到了这个建议:

始终使用视觉分析器。永远不要使用命令行。

另外,this question 说:

我不想使用命令行分析器,因为我需要全局加载/存储效率、回放和 DRAM 利用率,这些在可视分析器中更加明显。

除了像achieved_occupancy 这样的“动态”指标外,我从未注意到结果有任何差异。那么,这个建议有效吗? nvprof 的工作方式是否存在某种缺陷?我想知道使用可视化分析器相对于命令行表单的优势(如果有的话)。

更具体地说,是否存在nvprof 给出错误结果的指标?

注意:

我的问题与thisthis 不一样,因为它们是在询问nvvp 和Nsight 之间的区别。

【问题讨论】:

    标签: cuda gpu nvidia nvvp nvprof


    【解决方案1】:

    我不知道为什么有人会给你建议:

    永远不要使用命令行。

    假设“命令行”实际上是指nvprof这不明智。 在某些情况下使用nvprof 是有意义的。 (请注意,如果您实际上是指命令行分析器,那么该建议可能有点明智,尽管仍然是一个偏好问题。它与nvprof 是分开的,因此有一个单独的学习曲线。我个人将使用nvprof 而不是the command line profiler。)

    nvvp 在后台使用nvprof,以完成其所有的测量工作。然而nvvp 可以以各种有趣的方式组合测量的指标,例如便于引导分析。

    nvprof 不应该给你“错误的结果”,如果它出于某种原因,那么nvvp 应该同样容易受到此类错误的影响。

    nvvpnvprof 的使用可能只是口味或偏好问题。

    许多人会喜欢 GUI 的便利性。 nvvp GUI 提供了nvprof 没有的“引导分析”模式。如果您查看documentation,我确信可以创建一份详尽的其他差异列表。但无论nvvp 做什么,它都使用nvprof 来做。它没有替代方法来查询设备的分析器数据——它使用nvprof

    当使用nvvp 不方便时,我会使用nvprof,也许当我在难以或不可能启动nvvp 的计算集群节点上运行时。如果您正在执行有针对性的分析(测量单个指标,例如 shared_replay_overhead - nvprof肯定比启动 GUI 和运行会话更快),或者如果您正在收集指标以通过大量运行。

    在大多数其他情况下,我个人会使用nvvp。时间线功能本身比尝试从nvprof --print-gpu-trace ... 的输出中组装一个序列要方便得多,nvprof --print-gpu-trace ... 的输出与时间线基本相同。

    【讨论】:

    • 是的,通过命令行我的意思是nvprof。我使用nvprof 来衡量单个指标,但我被告知不要这样做,因此我想知道nvvpnvprof 的工作方式是否不同,所以感谢您提到“无论nvvp 做什么,它都使用@ 987654354@".
    • 实际上nvprof 只是addedCUDA 5 中,而视觉分析器已经存在于CUDA 2.1 中。但我认为两者都在后台使用CUPTI。使用nvprof -o out.sqlite3,您可以创建时间线,使用nvprof --analysis-metrics -o out-profile.sqlite3,您可以创建nvvp 所需的所有其他数据。然后您可以在nvvp 中导入这两个文件。
    猜你喜欢
    • 1970-01-01
    • 2019-08-29
    • 1970-01-01
    • 2014-11-12
    • 2023-01-26
    • 1970-01-01
    • 2010-12-16
    • 1970-01-01
    • 2011-11-23
    相关资源
    最近更新 更多