NVIDIA SXM4 机型安装驱动和nvidia-fabricmanager服务【centos7.9】
一 概述
一般的GPU使用是PCIe与主机通信,但这样的GPU的通信速率会被PCIe通道限制,PCIe4.0 X16的理论速率是32GB/s,为了解决这个问题,NVIDIA提出了NVswitch方案,推出了SXM机型的GPU,A100,H100这样的GPU都分别设有PCIe和SXM版本,到SXM4版本,GPU之间的通信速率可以达到600GB/s,完全脱离于CPU进行卡间通信,极大的提高了GPU的利用率。
在安装完常规的驱动之后,还需要安装nvidia-fabricmanager服务才能启用NVswitch通信
二 清理驱动
如果需要安装更高版本的fabricmanager服务,通常需要配套的更高版本的驱动支持,注意:驱动版本和服务器内核版本高度相关!由于深度学习环境复杂,服务器可能经常动不动就有很多个内核,建议在重启和重装驱动前检查和记录当前内核版本
卸载驱动:nvidia-uninstall
yum remove nvidia-*
检查内核版本:
2.1 查看当前启动内核
root@BJ-CentOS7 ~ # uname -sr
Linux 3.10.0-957.21.3.el7.x86_64
2.2 查看当前默认启动内核
root@BJ-CentOS7 ~ # grub2-editenv list
saved_entry=CentOS Linux (3.10.0-693.el7.centos.toa.x86_64) 7 (Core)
2.3 确认系统内当前已安装内核版本
root@BJ-CentOS7 ~ # cat /boot/grub2/grub.cfg | grep -v rescue | grep ^menuentry
menuentry 'CentOS Linux, with Linux 3.10.0-957.21.3.el7.x86_64' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-957.21.3.el7.x86_64-advanced-244b1cf5-bcde-47c5-9a90-055dcee38030' {
menuentry 'CentOS Linux, with Linux 3.10.0-693.el7.centos.toa.x86_64' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-693.el7.centos.toa.x86_64-advanced-244b1cf5-bcde-47c5-9a90-055dcee38030' {
menuentry 'CentOS Linux, with Linux 3.10.0-123.el7.x86_64' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-123.el7.x86_64-advanced-244b1cf5-bcde-47c5-9a90-055dcee38030' {
root@BJ-CentOS7 ~ # rpm -qa kernel
kernel-3.10.0-123.el7.x86_64
kernel-3.10.0-693.el7.centos.toa.x86_64
kernel-3.10.0-957.21.3.el7.x86_64
2.4 设置默认启动内核
修改默认启动内核后,重启机器即可以进入修改后的内核加载系统
root@BJ-CentOS7 ~ # grub2-set-default 'CentOS Linux (3.10.0-693.el7.centos.toa.x86_64) 7 (Core)'
root@BJ-CentOS7 ~ # grub2-editenv list
saved_entry=CentOS Linux (3.10.0-693.el7.centos.toa.x86_64) 7 (Core)
root@BJ-CentOS7 ~ # grub2-set-default 'CentOS Linux (3.10.0-957.21.3.el7.x86_64^C7 (Core)'
root@BJ-CentOS7 ~ # grub2-editenv list
saved_entry=CentOS Linux (3.10.0-957.21.3.el7.x86_64^
三 安装驱动
在安装驱动前,请先检查gcc,g++,make是否安装
gcc -v
g++ -v
make -v
下载驱动程序文件:
wget https://developer.download.nvidia.com/compute/cuda/12.0.0/local_installers/cuda_12.0.0_525.60.13_linux.run
安装:sh cuda_12.0.0_525.60.13_linux.run
四 安装 nvidia-fabricmanager 服务
安装完毕后,安装nvidia-fabricmanager
version=525.60.13
yum -y install yum-utils
yum-config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/cuda-rhel7.repo
yum install -y nvidia-fabric-manager-${version}-1
4.1 启动 nvidia-fabricmanager 服务
依次执行以下命令,启动服务。
systemctl daemon-reload #刷新服务配置文件
systemctl enable nvidia-fabricmanager
systemctl start nvidia-fabricmanager.service
4.2 查看 nvidia-fabricmanager 服务状态
执行以下命令,查看服务状态。
systemctl status nvidia-fabricmanager
安装nvidia container runtime(可选)
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.repo | sudo tee /etc/yum.repos.d/nvidia-docker.repo
sudo yum install -y nvidia-container-toolkit
本文系作者 @
admin
原创发布在 文档中心 | AheadAI ,未经许可,禁止转载。
有帮助?
评论