在添加C++代码之前,我们希望使用Nividia Nsight (Linux版本)来分析这些代码。这个想法是首先分析C++,找到热点,将它们转换成CUDA,再次分析,然后迭代这个过程,以成功地加速代码。但是,当我们仅分析C++时,分析器在生成时间线和配置文件输出之前似乎需要一些现有的CUDA代码。还有没有人遇到过这种情况?
发布于 2012-09-22 03:04:50
Nsight Edition只能分析CUDA代码。您可能需要安装第三方分析插件来分析主机代码。
您可以尝试从Eclipse Foundation站点安装OProfile集成(将http://download.eclipse.org/releases/indigo/粘贴到帮助/安装新软件...对话框)-我只是尝试了一下,但无法正确设置oprofile命令行。
发布于 2012-09-22 05:47:35
您可以使用nvtx (NVIDIA Tools Extension)手动检测您的代码,并将时间线显示在Nsight中,但对于自动分析和详细计数器,它只能分析GPU代码。
发布于 2017-01-05 19:24:58
是的,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工具包。
https://stackoverflow.com/questions/12535818
复制相似问题