ubuntu22.04安装显卡驱动+cuda+cudnn
- 1. 下载驱动和卸载、禁用自带驱动程序
- 1.1 查看系统显卡型号
- 1.2 从NVIDIA官网下载相应驱动
- 1.3 卸载Ubuntu自带的驱动程序
- 1.4 禁用自带的nouveau nvidia驱动
- 1.5 更新
- 1.6 重启电脑
- 1.7 查看是否将自带的驱动屏蔽
- 2. 安装显卡驱动
- 2.1 停止lightdm桌面服务
- 2.2 安装驱动
- 2.2.1 首先查看你有没有安装gcc
- 2.2.2 执行安装
- 3 安装cuda
- 3.1 安装cuda
- 3.2 配置环境变量
- 4 安装cudnn
- 4.1 下载cudnn
- 4.2 安装cudnn
- 4.3 测试cudnn
- 参考
1. 下载驱动和卸载、禁用自带驱动程序
1.1 查看系统显卡型号
lspci | grep -i nvidia
1.2 从NVIDIA官网下载相应驱动
官网网址:https://www.nvidia.com/Download/index.aspx?lang=en-us
1.3 卸载Ubuntu自带的驱动程序
sudo apt purge nvidia*
1.4 禁用自带的nouveau nvidia驱动
打开/etc/modprobe.d/blacklist.conf
sudo vi /etc/modprobe.d/blacklist.conf
如果提示没有vi就执行下面命令安装一下:
sudo apt install vi
在blacklist.conf文件中最后添加如下内容
blacklist nouveau
options nouveau modeset=0
然后保存退出。
1.5 更新
sudo update-initramfs -u
1.6 重启电脑
sudo reboot
1.7 查看是否将自带的驱动屏蔽
lsmod | grep nouveau
没有结果输出,则表示屏蔽成功。
2. 安装显卡驱动
2.1 停止lightdm桌面服务
sudo service lightdm stop
如果提示没有lightdm,使用下面命令安装,
sudo apt install -y lightdm
再执行上面的命令。如果按照的服务器版本的ubuntu,是没有图像化桌面的,可以忽略2.1步骤。
2.2 安装驱动
2.2.1 首先查看你有没有安装gcc
gcc --version
如果没有安装gcc一般make也没安装,这时需要使用下面命令安装一下gcc和make
sudo apt install gcc & make
2.2.2 执行安装
cd到你下载的显卡驱动的目录
sudo chmod a+x NVIDIA-Linux-x86_64-525.89.02.run
sudo ./NVIDIA-Linux-x86_64-525.89.02.run -no-x-check -no-nouveau-check -no-opengl-files
- -no-x-check: 安装时关闭X服务;
- -no-nouveau-check: 安装时禁用nouveau;
- -no-opengl-files: 只安装驱动文件,不安装OpenGL文件。
安装过程中下面步骤按照下图选择,其它默认。
安装完成以后执行
nvidia-smi
如果显示如下内容则表示安装成功。
3 安装cuda
3.1 安装cuda
从上面的图中可以看到显卡最高可以支持cuda12.0(红色框内)
网址:https://developer.nvidia.com/cuda-toolkit-archive
选择好之后cuda版本之后,可以看到如下安装命令。
在执行以上第三行命令时,可能由于文件太大导致下载时间过长,可以通过以下方法替换这条命令。
- 安装axel;
sudo apt install axel
- 使用axel下载cuda(下面命令中下载地址和上面第三行一样);
axel -n 50 https://developer.download.nvidia.com/compute/cuda/12.0.0/local_installers/cuda-repo-ubuntu2204-12-0-local_12.0.0-525.60.13-1_amd64.deb
这里50是指使用50个线程进行下载。
下载完成后继续执行官方给出代码的第四行及以后的代码安装cuda。
3.2 配置环境变量
安装完成时,还不算安装成功,需要配置环境变量。
- 打开.bashrc文件;
- 在文件末尾输入如下内容并保存退出;
export PATH=/usr/local/cuda-12.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-12.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
将下面的12.0替换为你的cuda版本,其他不变,如果不知道自己安装的是哪个版本,就去/usr/local/文件夹下找一下;
- 更新变量,使其生效;
source ~/.bashrc
在终端输入
nvcc -V
如果出现下图情况,则表明cuda安装完成。
4 安装cudnn
4.1 下载cudnn
网址:https://developer.nvidia.com/rdp/cudnn-download
下载cudnn需要登录账户,可以使用邮箱注册一个。
下载完成后如下所示:
将其上传到ubuntu系统中,如下。
4.2 安装cudnn
英伟达官网给出了安装过程,如下图所示。
- 启用本地存储库
sudo dpkg -i cudnn-local-repo-ubuntu2204-8.9.0.131_1.0-1_amd64.deb
- 导入 CUDA GPG 密钥
这里直接使用提示的命令导入密钥 - 刷新存储库元数据
sudo apt-get update
- 安装运行时库
sudo apt-get install libcudnn8=8.9.0.131_1.0-1+cuda12.0
这条命令可能会报如下错误,
解决方法: 在第3步时关注一下cudnn的路径,如下图所示,在var文件夹下。
打开 /var/cudnn-local-repo-ubuntu2204-8.9.0.131/ 文件夹,如下图所示。
直接使用dpkg命令安装红色框中的三个文件即可,命令如下。
sudo dpkg -i libcudnn8_8.9.0.131-1+cuda12.1_amd64.deb
sudo dpkg -i libcudnn8-dev_8.9.0.131-1+cuda12.1_amd64.deb
sudo dpkg -i libcudnn8-samples_8.9.0.131-1+cuda12.1_amd64.deb
4.3 测试cudnn
英伟达官网给出了测试安装的例子,如下图所示。
- 将 cuDNN 示例文件夹(cudnn_samples_v8)复制到可写路径,这里我复制到自己用户目录下,命令如下;
cp -r /usr/src/cudnn_samples_v8/ /home/user/
- 转到可写路径;
cd /home/user/cudnn_samples_v8/mnistCUDNN
- 编译 mnistCUDNN 示例;
make clean && make
这时可能出现如下图报错信息,
解决方法: 执行如下命令,参考网址
sudo apt-get install libfreeimage3 libfreeimage-dev
- 运行 mnistCUDNN 示例。
./mnistCUDNN
如果出现如下图所示结果,表明安装cudnn成功。
参考
[1] 英伟达官网下载显卡驱动
[2] 英伟达官网下载cuda
[3] 英伟达官网下载cudnn
[4] 英伟达官网安装cudnn指南
[5] 编译 mnistCUDNN 示例报错解决办法