其他分享
首页 > 其他分享> > docker中安装Nsight,分析cuda计算对GPU的利用效率

docker中安装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