马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
复现不同论文的代码时,往往要来回切 CUDA 版本:这篇要 11.3,那篇要 11.8。办法不是重装系统,而是把多个版本都装上,靠 /usr/local/cuda 这个软链接来回指。本文记录在已经装好 CUDA 11.3 的 Ubuntu 20.04 上再装 11.8、配 cuDNN、随时切换版本的完整流程。
前言
假设当前机器是 Ubuntu 20.04,已经装过 CUDA 11.3 和对应驱动。本文目标是在这台机器上再装一份 CUDA 11.8,并且能在两个版本之间自由切换。
一、安装第二个 CUDA
找对应版本的下载安装命令
CUDA 官方下载地址里选版本,再按 Linux → x86_64 → Ubuntu → 20.04 → runfile (local) 这条路径,页面会给两条命令,一条下载一条安装。
下载 run 文件
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
运行安装
su
sh cuda_11.8.0_520.61.05_linux.run
按界面提示走:方向键下选中 Continue,回车确认后输入 accept 回车;再用方向键移到 Driver 上,回车把 Driver 的勾去掉 —— 装多版本 CUDA 时驱动已经在第一个版本装好了,重复装容易冲突;然后移到 Install 回车开始安装,之后一路默认敲回车。
设置环境变量
su
gedit ~/.bashrc
把下面三行写进去:
# CUDA environment 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
重建软连接指向 11.8
cd /usr/local
su
rm -rf cuda
ln -s /usr/local/cuda-11.8 /usr/local/cuda
nvcc -V
看到 CUDA 版本变成 11.8,说明这一版生效了。
二、安装 cuDNN
下载并解压
去官方地址挑跟 CUDA 版本匹配的 cuDNN 下载,然后:
xz -d cudnn-linux-x86_64-8.9.7.29_cuda11-archive.tar.xz
tar -xvf cudnn-linux-x86_64-8.9.7.29_cuda11-archive.tar
替换库文件和头文件
su
cp lib/* /usr/local/cuda-11.8/lib64/
cp include/* /usr/local/cuda-11.8/include/
验证
cat /usr/local/cuda-11.8/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
能打印出版本号就是装好了。
三、切回旧版本
cd /usr/local
su
rm -rf cuda
ln -s /usr/local/cuda-11.3 /usr/local/cuda
再 nvcc -V 确认一下,版本已经切回 11.3。注意只动软链接,别去删 /usr/local/cuda-11.8 目录本身,那里面是已经装好的运行时。
四、几个坑
- 环境变量里 PATH 后面跟的是 /usr/local/cuda/bin(软链接路径),不是具体版本号目录,只有这样切软链接才能全局生效。
- 安装 runfile 时一定取消 Driver 勾选,除非你就是要重装驱动。
- gcc 版本要跟 CUDA 要求对得上,版本太新会在编译时报错,必要时先切 gcc。
- 改完 ~/.bashrc 记得 source,不然环境变量还是旧的。
qidao123.com企服评测-应用市场 编辑提示 |