标签:kernel paranoid lock 命令 Nsight NSight cuda GPU
最近刚开始接触CUDA,性能分析的时候免不了要使用Nsight工具,docker中又没有安装,就需要在自己的环境中配置了。
1. 运行docker
2. NSight安装准备
官方对Nsight的支持文档中,需要执行deviceQuery命令确定系统上的CUDA驱动程序和运行时版本,Ubuntu系统的deviceQuery在:
cd /usr/local/cuda/samples/1_Utilities/deviceQuery
Linux上对x86_64目标的要求,从主机上的GUI连接到基于x86_64的Linux的目标时,通过SSH建立连接。
使用Linux Perf:要收集线程调度数据和IP(指令指针)样本,目标系统上的Perf偏执级别必须为2或更小。使用以下命令进行检查:
cat /proc/sys/kernel/perf_event_paranoid
如果输出结果数值> 2,请执行以下操作以临时调整偏执级别(请注意,此操作是临时调整,系统每次重新启动后都需要执行):
sh -c 'echo 2 > /proc/sys/kernel/perf_event_paranoid'
要使更改永久生效,请使用以下命令:
sh -c 'echo kernel.perf_event_paranoid=2 > /etc/sysctl.d/local.conf'
如需移除请编辑/etc/sysctl.d/local.conf删除echo kernel.perf_event_paranoid=2 行,保存重启生效。
Nsight Systems需要glibc 2.14或更高版本。要检查目标设备上的glibc版本,请运行以下命令:
ldd --version
Nsight Systems需要目标系统上/var/lock目录的写权限,通过ls -l /var/lock 命令可以检查:
1 test@test:~$ ll /var/lock 2 lrwxrwxrwx 1 root root 9 Jul 31 16:28 /var/lock -> /run/lock/
3. NSight安装
在Nvidia下载中心选择NSight Systems,通过以下命令安装:
sh NsightSystems-linux-public-2022.2.1.31-5fe97ab.run --accept --quiet
默认安装路径/opt/nvidia/nsight-systems/2022.2.1,如需卸载直接rm -rf /opt/nvidia/nsight-systems/2022.2.1
在docker中,可能会出现关于locale的报错,格式不齐之类的。
可以通过以下命令修正:
1 apt-get clean && apt-get update && apt-get install -y locales 2 locale-gen en_US.UTF-8
需要注意的是,执行以上命令后,nsys并不能立马生效,仍会出现command nsys not found的情况,这个时候只需要把上述的NSight System的安装路径添加至环境变量即可,需要执行的命令如下:
1 vim /etc/profile
然后在末尾添加
export PATH=$PATH:/opt/nvidia/nsight-systems/2022.2.1/bin
再执行source /etc/profile 即可
运行nsys,发现能够正常输出。
标签:kernel,paranoid,lock,命令,Nsight,NSight,cuda,GPU 来源: https://www.cnblogs.com/songzz/p/16496219.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。