Linux系统安装多个CUDA版本与切换,正常AI模型训练


一. 结论:

一个带显卡的环境系统能安装多个CUDA版本,但不能安装多个NVIDIA驱动版本,多个驱动版本会导致冲突,NVIDIA驱动能向下兼容CUDA版本,但不能向上兼容CUDA版本。

例如,一个系统已经安装好了CUDA11.4和对应的NVIDIA驱动,但又安装了CUDA11.8用于AI算法训练,此时AI算法训练使用的还是CUDA11.4,而不是CUDA11.8。(此时成功安装的CUDA11.8,并不是nvdia-smi显示的CUDA的版本号,而是CUDA Tookit对应的版本号)

建议: 如果想要支持真正的多个CUDA版本切换,并且用于AI算法训练,需要安装一个较高版本的NVIDIA驱动和CUDA版本,这样系统中将要安装的多个 CUDA 版本就都能正常切换和运行了。

二. 上述结论原因:

这里涉及到nvidia-smi和nvcc的区别,以及不同CUDA版本对应不同的NVIDIA驱动版本。

2.1 nvidia-smi和nvcc的区别

(1)执行nvcc -V命令,显示是CUDA Tookit对应的版本号,是为了确保与您正在编译的CUDA代码兼容,不提供有关GPU的实时状态信息。

(2)执行nvidia-smi命令,显示是cuda的版本号(每个cuda版本对应了不同驱动版本),提供有关系统中NVIDIA GPU的实时状态信息。如果用于AI算法训练,关注的是nvidia-smi这个输出信息。

2.2 不同CUDA版本对应不同的NVIDIA驱动版本

以CUDA 11.4和CUDA 11.8为例,需要的驱动版本不同。如果安装了CUDA 11.8对应的驱动,那么既能支持CUDA 11.8, 也能支持CUDA 11.4; 反之则不行。

三. 解决方案:

3.1 安装新CUDA版本和NVIDIA驱动和cuDNN库

如果已经安装了NVIDIA驱动版本,先卸载旧驱动,再安装新CUDA对应的驱动,如果没有安装过NVIDIA驱动版本,可以直接安装新CUDA版本,它会自动安装对应的NVIDIA驱动。再安装cuDNN库。这块内容网上很多,可以百度或谷歌一下。

3.2 切换不同的CUDA版本(以CUDA 11.4和CUDA 11.8为例)

(1)用软链接的方式切换不同的CUDA版本

 A. 执行vi ~/.bashrc, 写入CUDA 环境变量

# CUDA enviroment variable
export PATH=$PATH:/usr/local/cuda/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda

再更新环境变量:

source ~/.bashrc

B. 删除原有软链接

# 假设以前安装的cuda-11.8
sudo rm -rf /usr/local/cuda

C. 新建软链接

# 假设cuda-11.4是新安装的cuda
sudo ln -s /usr/local/cuda-11.4 /usr/local/cuda

D. 执行nvidia-smi验证

(2)不用软链接方式

A. 执行vi ~/.bashrc,指定cuda版本以切换不同的CUDA版本

# cuda-11.4
#export PATH=$PATH:/usr/local/cuda-11.4/bin
#export CUDA_HOME=/usr/local/cuda-11.4
#export LD_LIBRARY_PATH=/usr/local/cuda-11.4/lib64:$LD_LIBRARY_PATH

# cuda-11.8
export PATH=$PATH:/usr/local/cuda-11.8/bin
export CUDA_HOME=/usr/local/cuda-11.8
export LD_LIBRARY_PATH=/usr/local/cuda-11.8/lib64:$LD_LIBRARY_PATH

再更新环境变量:

source ~/.bashrc

再执行nvidia-smi验证。

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值