Ubuntu20.04部署NCCL和InfiniBand网卡驱动
1.环境情况
带有NVLink和InfiniBand网卡的服务器
操作系统: Ubuntu 20.04.6 Server 64位版本
系统盘:1TB SSD *2 RAID1
最小化安装操作系统,细节就不讲述了,可以看我另一篇文章如何安装。
2.安装NVIDIA驱动、CUDA等
本文为方便环境安装,全部采用root账号。
禁用nouveau:
vi /etc/modprobe.f #追加如下两个参数到该文件
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_linux.run #授予安装包执行权限
sh cuda_12.0.0_525.60.13_linux.run #运行安装包
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-fab
ricmanager,和驱动保持版本一致
安装nv-peer-memory:
#克隆nv-peer-memory代码
./build_module.sh #运行脚本,自动构建
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_all.deb #安装构建好的deb包
lsmod | grep peer #检查nv-peer-memory安装是否正常
安装Mellanox网卡OFED驱动:
本文以“MLNX_OFED_LINUX-5.4-3.7.5.0-ubuntu20.”为例,可以到NVIDIA下载,如下图:
tar zxvf MLNX_OFED_LINUX-5.4-3.7.5.0-ubuntu20. #解压压缩包
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,如下图就表示安装成功了
发布评论