因为做深度学习的研究项目,为全新机器在Ubuntu 20.04 LTS 系统下 安装Nvidia 显卡驱动、Cuda、Cudnn。并进行CUDA版本切换
成功安装完成了,写个记录。
1. 安装Nvidia 显卡驱动
步骤一: 安装更新软件列表和依赖项
- 在安装Nvidia显卡驱动之前,需要更新软件列表和必要的依赖项。
sudo apt-get update # 更新软件列表
sudo apt-get install g++ # 下载g++编译器
sudo apt-get install gcc # 下载gcc编译器
sudo apt-get install make # 下载GNU Make编译器
sudo apt-get install initramfs-tools # 下载安装initramfs-tools
步骤二: 查看GPU型号,并下载对应驱动
# lspci -n/-nn:显示设备的vendor厂商号和device设备号;显示厂商等信息和名称。
lspci -nn | grep VGA
# 例如我这边输出
# 2d:00.0 VGA compatible controller: NVIDIA Corporation Device 2204 (rev a1)
- 输入数字代码(2204)查询显卡型号
http://pci-ids.ucw.cz/read/PC/10de/2504
- 知道了显卡型号,就可以在官网下载对应的显卡驱动
https://www.nvidia.cn/Download/index.aspx?lang=cn - 选择对应的显卡类型、信号
- 我这边安装的是Ubuntu 20.04 LTS,选择操作系统Linux 64-bit
- 也可以输出命令
arch
查询操作系统架构 - 下载类型选生成分支生,语言选中文即可
- 点击下载,即可
步骤三:禁用nouveau通用驱动
-
同时,我这边是服务器版Ubuntu,无图形界面,若安装的是有图形界面的Ubuntu,可输入
Ctrl + Alt + F1
到F6
,以免出现报错 -
我这边原先是没驱动的,就不用删除原有显卡驱动,要是有的话,需要提前进行删除。
sudo apt-get remove --purge nvidia*
,需要彻底删除,否则安装时会报错。 -
修改blacklist.conf文件
sudo vim /etc/modprobe.d/blacklist.conf
- 在blacklist.conf文件,最下方添加命令
blacklist nouveau
options nouveau modeset=0
- 更新配置
sudo update-initramfs -u
- 之后必须进行重启,
sudo reboot
,重启后输入下方命令,若无输出则说明禁用成功
lsmod | grep nouveau
步骤三:安装Nvidia 显卡驱动
对显卡驱动run文件,进行赋权,并进行安装。
#修改权限
sudo chmod 777 NVIDIA-Linux-x86_64-384.111.run
#安装驱动
sudo ./NVIDIA-Linux-x86_64-525.105.17.run –no-x-check –no-nouveau-check –no-opengl-files
#–no-x-check 关闭X服务
#–no-nouveau-check 禁用nouveau
#–no-opengl-files 不安装OpenGL文件
- 安装过程中出现以下提示,进行选择。(顺序可能不同)
-
1.Install NVIDIA's 32-bit compatibility libraries? 是否安装NVIDIA的32位兼容库? 选择 NO 2.The distribution-provided pre-install script failed! Are you sure you want to continue? 分发提供的预安装脚本失败!你确定要继续吗? 选择 continue installation 3.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? 您想向DKMS注册内核模块源吗? 这将允许DKMS自动构建一个新模块,如果您稍后安装不同的内核? 选择 No 4.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. 是否要运行nvidia-xconfigutility来自动更新x配置, 以便在重新启动x时使用nvidia x驱动程序? 任何预先存在的x confile都将被备份。 选择 Yes
安装完成后,
# 可进行重启
sudo reboot
# 输入指令查看显卡信息
nvidia-smi
2. 安装CUDA
步骤一: 下载CUDA安装包
- 根据 Tensorflow 对应的GCC、CUDA、cuDNN版本信息,保证,版本大于等于推荐版本。https://tensorflow.google.cn/install/source#linux
- 进行CUDA和cuDNN的选择,也可以直接根据官方推荐进行下载安装。
- 从Nvidia官网下载CUDA
https://developer.nvidia.com/cuda-downloads
下方链接,选择更多版本
https://developer.nvidia.com/cuda-toolkit-archive
- 接下来根据提示进行下载、安装
wget https://developer.download.nvidia.com/compute/cuda/12.1.0/local_installers/cuda_12.1.0_530.30.02_linux.run
sudo sh cuda_12.1.0_530.30.02_linux.run
- 其中,可以直接依据指令wget命令进行下载。也可以复制run包到浏览器 中,进行下载。(ps:这边需注意对应的cuda版本)
https://developer.download.nvidia.com/compute/cuda/12.1.0/local_installers/cuda_12.1.0_530.30.02_linux.run
步骤二: 安装CUDA安装包过程中的选择
Do you accept the above EULA? (accept / decline / quit):
- 是否接受最终用户许可协议,输入
accept
- 回车键进行勾选,X就是选中,没有X就是没有选中,把安装驱动进行取消。之后向下键,回车确认
install
步骤三: 配置CUDA环境
sudo vim ~/.bashrc
- 在bashrc文件最下方,添加下入代码
- (ps:这边需要注意cuda的版本,版本不同,路径的命名需修改)
export CUDA_HOME=/usr/local/cuda-11.2
export PATH=$PATH:/usr/local/cuda-11.2/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.2/lib64
- 更新环境
source ~/.bashrc
- 测试CUDA是否安装成功
nvcc -V
# 或者 nvcc --version
输出下述结果,表示安装成功
文章来源:https://www.toymoban.com/news/detail-539425.html
3. 安装cuDNN
步骤一:下载cuDNN包
- 根据Tensorflow对应CUDA,下载相应的cuDNN包。(这边下载,可能需要登录Nvida账号,可按照网站指引,进行登录或注册。)
https://developer.nvidia.com/rdp/cudnn-archive - 例如这边选择了
Download cuDNN v8.2.0 (April 23rd, 2021), for CUDA 11.x
- 点击
cuDNN Library for Linux (x86_64)
即可下载压缩包
- 将压缩包,放入自定义路径后,输入命令进行解压
tar -xzvf cudnn-11.3-linux-x64-v8.2.1.32
- 解压后,输入命令,讲cuDNN对应文件拷贝至CUDA指定路径。
sudo cp cuda/include/cudnn*.h /usr/local/cuda-11.2/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-11.2/lib64
sudo chmod a+r /usr/local/cuda-11.2/include/cudnn*.h /usr/local/cuda-11.2/lib64/libcudnn*
4. CUDA版本切换
- 因为后续部分项目,用的库对应的CUDA不同,无需进行修改,修改环境CUDA路径即可。例如需要11.1的CUDA,可通过修改bashrc进行修改
sudo vim ~/.bashrc
将原先的cuda-11.2注释掉,添加cuda-11.1新的环境设置,即可文章来源地址https://www.toymoban.com/news/detail-539425.html
# cuda-11.2
# export CUDA_HOME=/usr/local/cuda-11.2
# export PATH=$PATH:/usr/local/cuda-11.2/bin
# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.2/lib64
# cuda-11.1
export CUDA_HOME=/usr/local/cuda-11.1
export PATH=$PATH:/usr/local/cuda-11.1/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.1/lib64
到了这里,关于Ubuntu 20.04 LTS 系统下 安装Nvidia 显卡驱动、CUDA、cuDNN, 并可进行CUDA版本切换的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!