Ubuntu安装CUDA、CUDNN(持续更新)
Ubuntu安装CUDA、CUDNN(持续更新)
作为一名深度学习炼丹师,配置CUDA环境是一项必不可少的技能,所谓工欲善其事,必先利其器。
CUDA安装:
sudo pacman -S cuda
完事,今天博客到此为止。。。
emmm,仅限于Arch Linux。Ubuntu还是老老实实一步步来吧。
这里使用的Ubuntu,全新安装的LTS版,server或者桌面版都行。
预准备
- Ubuntu LTS 20.04(Ubuntu的安装不在本博客范畴,网上教程很多)
- 可以上网
NVIDIA驱动安装
这里使用的安装驱动方法,与网上很多方式不同,使用的添加ppa源的方式安装。
优点:通过apt安装,apt管理,更新及时,一键安装,无须冗余操作。
缺点:缺点就是几乎完爆下载deb或者run包安装的方式。
- 添加nvidia-driver ppa源
sudo add-apt-repository ppa:graphics-drivers/ppa
期间会让你ENTER确认等等,跟着提示操作即可
- 更新源
sudo apt update
- 查看可以安装的驱动版本
apt search nvidia-driver
如下图:
可以看到,有很多nvidia-driver版本,根据自己将要安装的cuda选择版本安装,一般而言,安装最新nvidia驱动就好,因为新驱动可以兼容老版本的cuda。
所以,这里我安装nvidia-driver-460:
sudo apt install nvidia-driver-460
执行完成后,安装完毕,可以执行:
nvidia-smi
查看新卡和情况,如果没能执行成功,待会重启一般就好,正常情况,这里不会出问题。
安装CUDA和CUDNN
CUDA安装
现在的CUDA官网,旧版本的链接,默认都被隐藏了,其实装最新版本无大碍。截止写这篇博客为止,官网最新CUDA为11.3,所以进cuda官网,只有11.3的下载链接,百度太拉胯,google搜索cuda11.2就能发现隐藏入口,网址如下:
所以如果后续更新,想安装旧版本的cuda,也许官网再也找不到链接,但是链接仍然存在,如上修改版本号查找下载链接即可。
如上图所示,这样选择即可,然后可以看到下面有官网的安装提示。官网给的安装命令在下面。
依次执行如下命令:
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.2.0/local_installers/cuda-repo-ubuntu2004-11-2-local_11.2.0-460.27.04-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2004-11-2-local_11.2.0-460.27.04-1_amd64.deb
sudo apt-key add /var/cuda-repo-ubuntu2004-11-2-local/7fa2af80.pub
sudo apt-get update
特别提示,需要注意一点哦。
如果你是想安装多版本cuda并存的,那么不同版本的cuda在安装的时候,都会让你执行下面这条命令,但是会产生冲突,所以最好的方式是,在安装时,指定安装版本:
如,官网原给的命令为(先不要执行):
sudo apt install cuda
但如果你想安装多个版本cuda,例如10.2和11.2,你都用这条命令,会使得第一次安装的cuda被卸载,所以如果你想多版本共存,应该指定版本。
首先使用:
apt search cuda
会看到有cuda和cuda-11-2,看到cuda后面也有版本号,其实这里是同一个版本,若是你有两个版本cuda,这里会有多个cuda,指定版本号安装:
sudo apt install cuda-11-2
至此,cuda安装完毕,也给后续想安装多版本cuda共存提供了方便。
CUDNN安装
cudnn的安装,需要登录/注册nvidia developer的帐号,才能下载。emmm,没办法。老实注册吧。(再次感叹Arch Linux一键安装的快感)
登录自己的帐号后,选择最新cudnn for 之前安装的cuda版本的
如,我之前安装的cuda11.2, 所以我这里选择第一条Download cuDNN v8.1.1 (Feburary 26th, 2021), for CUDA 11.0,11.1 and 11.2,
展开可以看到:
选项太多,我已经标出来了,选择适合自己系统的版本即可,一个是看系统版本,一个是系统架构,ubuntu20.04, 现在电脑架构都是X86_64的,aarch64是给arm结构的。
下载选中的三个包,都是deb格式。
然后到下载目录中,执行:
sudo dpkg -i libcudnn*
等待执行完毕,即安装成功,还剩最后一步,添加环境变量,有两种方式,可以选择添加到全局PATH变量中,或者添加到使用的用户的变量中,如果是服务器使用,多用户共享,则可以添加到系统的全局PATH变量中:
sudo vim /etc/bash.bashrc
在文件最后,添加如下:
export PATH="/usr/local/cuda/bin:$PATH"
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib:/usr/local/cuda/lib64
如果是多版本的cuda 并存,可以查看/usr/local/下面的cuda版本关系,选择自己想要的默认版本路径,添加到PATH变量即可
如果只修改个人用户的环境变量,则将上述两行,添加到你的~/.bashrc最后即可
安装完毕,最后重新登录用户
nvcc -V
即可看到cuda版本,大功告成!