🌀Jarson Cai's Blog
头脑是日用品,不是装饰品
Ubuntu CUDA编程环境配置
CUDA开发环境配置

Ubuntu下CUDA环境配置

为了学习CUDA编程,我们需要一套Linux下的CUDA编程环境,需要注意的是我们的Linux下需要直通显卡,所以记住不能使用虚拟机!不能使用虚拟机!不能使用虚拟机!

那为了方便学习,又不能完全抛弃Windows,毕竟我还要写毕业论文。那么双系统就是最好的方案了。

Windows & Ubuntu 双系统

首先,Linux发行版的选择,我建议还是用Ubuntu,毕竟群体多,社区才能维护。

双系统安装参考视频

Ubuntu安装显卡驱动、cuda、cudnn

我使用的配置如下:

  • Ubuntu:20.04
  • 显卡:RTX3060
  • CUDA版本:11.7
  • cudnn版本:8.9.0
  • 显卡驱动版本:535

显卡驱动安装

Ubuntu安装显卡驱动,CUDA,cudnnn参考视频

注意,安装完驱动必须重启!

CUDA和cudnn安装

Ubuntu22.04安装CUDA环境参考文章

CUDA工具包安装

首先进入NVIDIA CUDA Toolkit Archive下载你想要的cuda工具版本,需要根据你系统的版本和显卡驱动版本进行选择,只要支持就ok

在Ubuntu终端输入:

1
$ nvidia-smi

在显示的CUDA版本代表当前驱动支持的最高版本CUDA,我的最高版本为12.2,所以选择安装的CUDA版本需要小于12.2。

我选择了CUDA11.7的版本:

依次输入命令:

1
$ wget https://developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda_11.7.0_515.43.04_linux.run

下载完包之后,我们要按照第二条命令装CUDA,但是在安装这个之前,你需要安装一下gcc的环境,不然就会缺少依赖报错:

1
2
3
4
$ sudo apt update
$ sudo apt install gcc
# 顺便安装一下g++
$ sudo apt install g++

安装cuda包:

1
$ sudo sh cuda_11.7.0_515.43.04_linux.run

安装过程中间会跳出Abortcontinue的选项,不要理会,选择continue

后续又会跳出接受不接受,选择accept,之后便会跳出需要install的选项,盗用一下别人的截图: 需要注意上述出现的Driver是CUDA11.7配套的驱动,但不一定适合显卡,但只需要我们的Driver版本比它高,都是可以用的。选中Driver,按空格去掉x,然后再选择install。

CUDA环境变量配置

打开终端,输入:

1
$ gedit ~/.bashrc

此时会出现一个记事本来编辑你的环境变量: 像上图那样,或者像下面那样都ok,输入:

1
2
3
# CUDA Environment
export PATH=$PATH:/usr/local/cuda-11.7/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.7/lib64

保存退出,然后输入:

1
$ source ~/.bashrc

或者直接重启终端也是OK的。

检查环境是否配置成功:

1
$ nvcc -V

如果出现了CUDA版本,那么就说明你已经配置成功了!

cudnn安装

首先进入NVIDIA cuDNN Archive下载你想要的cuDNN版本,需要根据你的CUDA版本进行选择,只要支持就ok

所以我选择了cuDNN v8.9.0, for CUDA 11.x:

中间需要注册NVIDIA官方开发者的账号,这个我就不展示了!

  • 下载完成之后,在下载好的目录进入终端:
1
$ sudo dpkg -i cudnn-local-repo-ubuntu2204-8.9.0.131_1.0-1_amd64.deb
  • import CUDA GPG key:
1
2
# 注意这里需要根据终端提示你的命令进行下载,每个人的设备提示可能不一样
$ sudo cp /var/cudnn-local-repo-ubuntu2204-8.9.0.131/cudnn-local-2063C34E-keyring.gpg /usr/share/keyrings/
  • 刷新库
1
$ sudo apt-get update
  • 安装runtime library:
1
2
3
4
# 注意,这里的libcudnn8和cuda版本的配对是指定的
# 可通过apt-cache policy libcudnn8命令查看。
# 我这里应该使用libcudnn8=8.9.0.131-1+cuda11.8
$ sudo apt-get install libcudnn8=8.9.0.131-1+cuda11.8
  • 安装develop library:
1
$ sudo apt-get install libcudnn8-dev=8.9.0.131-1+cuda11.8
  • 安装 the code samples and the cuDNN library documentation:
1
sudo apt-get install libcudnn8-samples=8.9.0.131-1+cuda11.8

验证cudnn是否安装成功

1
2
3
4
5
$ cp -r /usr/src/cudnn_samples_v8/ $HOME
$ cd $HOME/cudnn_samples_v8/mnistCUDNN
# 如果没有make包,则输入sudo apt-get make下载
$ make clean && make
$ ./mnistCUDNN

注:如果上面的make命令提示缺少FreeImage.h,运行:

1
$ sudo apt-get install libfreeimage3 libfreeimage-dev

如果出现下面的情况说明cudnn测试成功了:

Ubuntu配置编程工具

下载一个vscode,选择官网的.deb版本。

下载完成之后安装:

1
$ sudo dpkg -i code_1.80.1-1689183569_amd64.deb

启动vscode

1
$ code

vscode添加扩展程序:

环境配置成功。


最后修改于 2023-07-15

知识共享许可协议
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。