【问题标题】:Can Nsight Eclipse profile C++ code?Nsight Eclipse 可以分析 C++ 代码吗?
【发布时间】:2012-09-14 04:31:20
【问题描述】:

在向其中添加 CUDA 代码之前,我们希望使用 Nividia Nsight Eclipse(Linux 版本)对其进行分析。想法是先对 C++ 进行剖析,找到热点,将其转换为 CUDA,再次剖析,然后迭代此过程以逐步加快代码速度。但是,当我们仅对 C++ 进行分析时,分析器似乎需要一些现有的 CUDA 代码才能生成时间线和分析输出。有人遇到过这种情况么?

【问题讨论】:

    标签: c++ cuda nsight


    【解决方案1】:

    Nsight Eclipse 版只能分析 CUDA 代码。您可能需要安装第 3 方分析插件来分析主机代码。

    您可以尝试从 Eclipse Foundation 站点安装 OProfile 集成(将 http://download.eclipse.org/releases/indigo/ 粘贴到帮助/安装新软件...对话框中) - 我刚刚尝试过,但无法正确设置 oprofile 命令行。

    【讨论】:

      【解决方案2】:

      您可以使用 nvtx(NVIDIA 工具扩展)手动检测您的代码,并在 Nsight 中显示时间线,但对于自动分析和详细计数器,它只能分析 GPU 代码。

      【讨论】:

        【解决方案3】:

        是的,Nsight Eclipse 可以分析 C++ 代码。重新表述您的问题,它还可以分析主机 (CPU) C++ 代码。默认情况下,它只分析 GPU 代码。 CPU 分析是一项更加手动的任务;它不会自动分析功能。

        您需要使用 NVTX。像这样:

        #include "nvToolsExt.h"
        nvtxNameOsThread(0,"InputVideo");
        nvtxRangePush(__FUNCTION__);
        // .. do some CPU computing here
        nvtxRangePop();
        

        使用 -lnvToolsExt -L/usr/local/cuda/lib64 构建

        libnvToolsExt.so 的路径因人而异。 NVTX 附带 CUDA 工具包。

        The CUDA blog has a post on this.

        【讨论】:

          猜你喜欢
          • 2012-06-20
          • 2011-07-29
          • 1970-01-01
          • 1970-01-01
          • 2015-12-03
          • 1970-01-01
          • 2014-08-30
          • 2019-07-01
          • 1970-01-01
          相关资源
          最近更新 更多