1. 根据 NVIDIA 显卡型号,下载对应的显卡驱动
- 首先确定自己的显卡型号
lspci | grep -i vga
可以看到显卡型号是 GeForce RTX 2080
- 然后去NVIDIA 官网下载对应的显卡驱动
显卡驱动下载地址
然后把下载好的驱动程序放到一个英文文件夹(否则进入非图形化界面时可能中文乱码),例如我这里新建了一个 driver
- 安装所需依赖
sudo apt-get update
sudo apt-get install g++
sudo apt-get install gcc
sudo apt-get install make
- 卸载原有 NVIDIA 驱动
sudo apt-get remove --purge nvidia*
- 禁用 nouveau (nouveau 是通用的驱动程序)
sudo gedit /etc/modprobe.d/blacklist.conf
在 blacklist.conf 末尾添加以下两行,保存后关闭文本
blacklist nouveau
options nouveau modeset=0
在终端输入如下更新,更新结束后重启电脑(必须)
sudo update-initramfs -u
重启后输入如下指令,如无输出则已关闭 nouveau
lsmod | grep nouveau
- 关闭 Secure Boot
重新启动按 F2 进入自己电脑的 BIOS 设置
关闭Secure Boot,并且清除安全启动密钥,保存后退出重启
- 安装过程需要在非图形化界面中进行,输入以下命令进入非图形化界面
#进入文本界面
sudo telinit 3
# 如果需要回到图形化界面,则用这条指令
sudo telinit 5
- 输入用户名、密码
- 关闭显示服务
sudo service gdm3 stop
- 为驱动程序赋予权限,然后运行安装
cd /home/yao/driver/NVIDIA-Linux-x86_64-535.113.01.run
sudo chmod 777 NVIDIA-Linux-x86_64-535.113.01.run
# 安装:–no-opengl-files 只安装驱动文件,不安装OpenGL文件
sudo ./NVIDIA-Linux-x86_64-535.113.01.run --no-opengl-files
安装过程中有一些选项
- 选择 continue installation
- Install Nvidia’s 32-bit compatibility libraries? 选择 No
- Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later? 选择 No
- Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up. 选择 No 如果选 yes 可能会有问题
- 安装完成后重新开启显示服务
sudo service gdm3 start
- 驱动安装完成后,检查一下
nvidia-smi
可以看到显卡驱动版本是 535.113.01
支持的 CUDA 最高版本是 12.2
- 调出 NVIDIA 设置界面,说明没问题了
nvidia-settings
2. 根据显卡驱动,下载对应的 CUDA
- CUDA 是由 NVIDIA 开发的并行计算平台和应用程序编程接口(API)
CUDA 是一个底层的平台,它提供了对 GPU 的直接访问和控制。开发者可以使用 CUDA 编写 GPU 核函数,并在主机端(CPU)上调用这些核函数,实现并行计算。CUDA 提高了一套 API 来管理 GPU 的内存、线程调度和数据传输等操作,使开发者能够更方便地利用 GPU 的并行计算能力。
- CUDA 需要和你上面安装的
显卡驱动
对应起来
显卡驱动和CUDA的适配关系
我装的显卡驱动:NVIDIA-Linux-x86_64-535.113.01.run
支持的 CUDA 最高版本为 12.2
不过我这里准备装 CUDA 11.7
,因为看网上基本上都装的这个版本
- 安装 CUDA
CUDA 下载
选择自己的操作系统、芯片架构、Linux发行版本、安装方式
官网提供了安装指令
我这里用的是 deb(local) 方式安装!!!注意:千万别用这种方式安装!!!我这里留着是为了避坑!!!
如果这样装了之后,重启之后拓展屏就识别不到了,我猜它是把我之前装的显卡驱动给卸载了
我后面是按上面的方式重新装了显卡驱动才解决的!!!
我这里是新建了一个 CUDA 文件夹,在这个目录下运行这些指令
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin
sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda-repo-ubuntu2204-11-7-local_11.7.0-515.43.04-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2204-11-7-local_11.7.0-515.43.04-1_amd64.deb
sudo cp /var/cuda-repo-ubuntu2204-11-7-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda
最后一步会报错,因为这种方法安装会自动安装显卡驱动,和我们之前装的显卡驱动不是同一个版本!!
我们如果对显卡版本有要求的话,建议不用这种方式安装
现在换成 runfile(loacl) 安装方式,就不会报错
wget https://developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda_11.7.0_515.43.04_linux.run
sudo sh cuda_11.7.0_515.43.04_linux.run
选择 Continue
输入 accept
选择需要安装的内容([X]代表安装,[ ]代表不安装)
按下 空格键
取消安装驱动,因为之前装过了
然后选择 install
这样就说明安装成功了
- 配置环境变量
sudo gedit ~/.bashrc
将 CUDA 的环境变量加到最后
export PATH=/usr/local/cuda-11.7/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.7/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
保存并关闭文件
重新加载当前用户的 bash 配置文件 ~/.bashrc
查看 CUDA 编译器(nvcc)的版本信息
source ~/.bashrc
nvcc -V
3. 根据 CUDA版本,下载对应的 cuDNN 库
- cuDNN 是 NVIDIA 专门为深度学习任务开发的加速库
cuDNN 提供了一系列高性能的深度学习基本操作的实现,如卷积、池化、归一化等。cuDNN 是基于 CUDA 的,它利用了 CUDA 提供的并行计算能力和相关的 API。通过使用 cuDNN,开发者可以更轻松地构建和训练深度学习模型,并且在 GPU 上获得更好的性能。cuDNN 已经成为深度学习领域广泛使用的库,许多深度学习框架(如 TensorFlow、PyTorch)都集成了对 cuDNN 的支持,以获得更高的计算性能。
- cuDNN 需要和上面安装的 CUDA 版本对应起来
cuDNN 只是一个即插即用的库,不需要担心不小心装错,因为只是将库文件放置再cuda目录下而已
如果版本装错,只需要删除再安装新的版本即可
CUDA 11.7 对应的 cuDNN 版本就比较多了,我这里安装的是 cuDNN 8.6.0
- 安装 cuDNN
官网下载需要注册账号
cuDNN 下载
解压 cuDNN 文件
tar -xvf cudnn-linux-x86_64-8.6.0.163_cuda11-archive.tar.xz
将以下文件复制到 CUDA 目录(/usr/local/cuda/
文件夹下面的 include
和 lib64
)
cd /home/yao/cuDNN
sudo cp cudnn-*-archive/include/cudnn*.h /usr/local/cuda/include
sudo cp cudnn-*-archive/lib/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
验证是否安装成功文章来源:https://www.toymoban.com/news/detail-764371.html
sudo cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
这样就说明装好了
装 cuDNN 本质上很简单,就是把你下载的这些 include
和 lib
中的文件移动到 CUDA 对应的目录下
文章来源地址https://www.toymoban.com/news/detail-764371.html
到了这里,关于二十、Ubuntu22.04 + RTX2080 配置显卡驱动 + CUDA + cuDNN的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!