admin 管理员组

文章数量: 887021


2024年1月12日发(作者:朝鲜疫情最新消息)

Ubuntu20.04部署NCCL和InfiniBand网卡驱动

1. 环境情况

带有NVLink和InfiniBand网卡的服务器

操作系统: Ubuntu 20.04.6 Server 64位版本

系统盘:1TB SSD *2 RAID1

最小化安装操作系统,细节就不讲述了,可以看我另一篇文章如何安装。

2. 安装NVIDIA驱动、CUDA等

本文为方便环境安装,全部采用root账号。

先替换一下APT源到国内,以下是华为源替换方式,可去华为官网查看详细:

禁用nouveau:

vi /etc/modprobe.d/ #追加如下两个参数到该文件

blacklist nouveau

options nouveau modeset=0

update-initramfs -u #重新生成initramfs

reboot #重启一次操作系统

lsmod | grep nouveau #重启完成后检查一下nouveau是否禁用成功,否则重新检查禁用情况

安装NVIDIA驱动:

apt install nvidia-driver-525 #安装NVIDIA驱动,版本号525,安装完成后执行nvidia-smi验证是否正常

安装NVIDIA CUDA-toolkit:

可以到NVIDIA官网参考安装方式,本文采用runfile(local)方式安装,如下图所示:(放不了链接,自行百度)

chmod +x cuda_12.0.0_525.60.13_ #授予安装包执行权限

sh cuda_12.0.0_525.60.13_ #运行安装包

vi ~./bashrc #追加下面参数到该文件

export LD_LIBRARY_PATH=/usr/local/cuda/lib

export PATH=$PATH:/usr/local/cuda/bin

nvcc --verison #验证CUDA是否安装正常

输入appect回车,去掉驱动安装,上面已经安装好驱动:

安装nccl:

可以到NVIDIA官网参考安装方式,如下图所示:(放不了链接,咨询百度一下,需要注册)

apt install libnccl2=2.18.5-1+cuda12.0 libnccl-dev=2.18.5-1+cuda12.0 #安装对应cuda12.0的nccl,上面我们安装的CUDA12.0

apt install nvidia-fabricmanager-525 #如果是多卡机,并且有NVLink,需要安装nvidia-fabricmanager,和驱动保持版本一致

安装nv-peer-memory:

#克隆nv-peer-memory代码

cd nv_peer_memory #进入代码目录

./build_ #运行脚本,自动构建

cd /tmp #进入tmp目录

tar xzvf nvidia-peer-memory_ #解压刚刚自动生成的压缩包

cd nvidia-peer-memory-1.3 #进入解压的目录

dpkg-buildpackage -us -uc #制作deb包

dpkg -i ../nvidia-peer-memory-dkms_1.2-0_ #安装构建好的deb包

lsmod | grep peer #检查nv-peer-memory安装是否正常

安装Mellanox网卡OFED驱动:

本文以“MLNX_OFED_LINUX-5.4-3.7.5.0-ubuntu20.04-x86_”为例,可以到NVIDIA官网下载,如下图:

tar zxvf MLNX_OFED_LINUX-5.4-3.7.5.0-ubuntu20.04-x86_ #解压压缩包

cd MLNX_OFED_LINUX-5.4-3.7.5.0-ubuntu20.04-x86_64 #进入解压好的目录

apt install python3 gcc build-essential dh-python dh-autoreconf python3-distutils debhelper make quilt pkg-config bzip2 -y #安装相关依赖软件包

./mlnxofedinstall --add-kernel-support #安装OFED,注意这里可能会引起网络短暂断开,建议使用screen丢进后台安装,避免断网后中断安装

安装nccl-test:

cd /home #进入home目录

#克隆nccl-test代码

cd nccl-tests #进入代码目录

make MPI=1 MPI_HOME=/usr/mpi/gcc/openmpi-4.1.2a1 -j 16 #编译nccl-test,注意MPI=1是多机测试才需要的,根据自身情况添加,-j 16根据自身CPU核数修改线程数

cd /home/nccl-tests/build #进入改目录

./all_reduce_perf -b 8 -e 128m -f 2 -g 1 #验证nccl,如下图就表示安装成功了


本文标签: 安装 驱动 方式 官网