ubuntu显卡及驱动
2022-11-25
一、概述
计算机的一个重要组成部分是处理器,包括CPU和GPU,CPU包括算数运算和逻辑运算。
通常一个电脑都包含CPU,而不一定配备GPU。GPU更擅长图像处理及矩阵运算,包括目前比较火的机器学习都会用到GPU,当然CPU也可以,只是效率没有GPU高。
GPU的大公司主要是:英伟达、AMD、因特尔、ARM、高通Adreno、景嘉微电子、芯原微电子等等;
而目前主流显卡的显示芯片主要分为:英伟达NVIDIA 和 AMD;
我们这里以 英伟达NVIDIA 为例子。
二、NVIDIA显卡,显卡驱动和CUDA版本之间的关系
NVIDIA显卡:是一款硬件板子,主流是NVIDIA的GPU,深度学习本身需要大量计算。GPU的并行计算能力,在过去几年里恰当地满足了深度学习的需求。
显卡驱动:告诉计算机识别显卡硬件,调用其计算资源。
CUDA:是NVIDIA推出的只能用于自家GPU的并行计算框架。只有安装这个框架才能够进行复杂的并行计算。主流的深度学习框架也都是基于CUDA进行GPU并行加速的。还有一个叫做cudnn,是针对深度卷积神经网络的加速库。
三、查看显卡型号及显卡驱动版本
具体操作步骤:
1、使用快捷键【Ctrl+Alt+T】打开终端;
2、输入以下命令查看显卡版本号。
# 查看显卡型号 lspci | grep -i nvidia # 这里以 nvidia 为例子 #或者 ubuntu-drivers devices
#或者
lshw -c video #查看显卡型号
3、输入以下命令查看显卡驱动版本号:
# 查看驱动版本 sudo dpkg --list | grep nvidia-* # 或者 #查看gpu信息 nvidia-smi #GPU列表信息 nvidia-settings #显示你的显卡信息
4、 输入以下命令查看cuda本号:
# 查看 cuda 版本 nvidia-smi #或者 nvcc --version # 或者 nvcc -V # 或者 去安装目录下查看: cat /usr/local/cuda/version.txt
这时候
5、 其他相关操作命令:
# 查看驱动版本 sudo dpkg --list | grep nvidia-* #查看发布版本号 cat /etc/issue lsb_release -a #查看内核版本号 uname -sr uname -a #查看CPU信息 cat /proc/cpuinfo | grep "physical id" | uniq | wc -l #查看CPU个数 cat /proc/cpuinfo | grep "cpu cores" | uniq #查看CPU核数 cat /proc/cpuinfo | grep 'model name' |uniq #查看CPU型号 #查看gpu信息 nvidia-smi #GPU列表信息 nvidia-settings #显示你的显卡信息 lshw -c video #查看显卡型号 lspci | grep -i nvidia #得到NVIDIA显卡的信息
四、NVIDIA显卡驱动及CUDA官网下载
4.1 NVIDIA显卡驱动以及CUDA的版本约束
接下来下载NVIDIA显卡驱动以及CUDA,他们之间有版本约束:
可以通过以下网址查看: https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
提醒: 官网下载的cuda一般本身包含 NVIDIA显卡驱动,所以不需要再下载NVIDIA显卡驱动,安装cuda会自动安装NVIDIA显卡驱动。
4.2 NVIDIA显卡驱动下载
输入自己的信息,包括产品类型、系列、产品、操作系统、语言等,然后点击开始搜索,结果在下面:
搜索结果如下:
根据实际情况选择具体的版本。
4.3 CUDA下载
下载官网:
https://developer.nvidia.com/cuda-toolkit-archive
https://developer.nvidia.com/cuda-downloads
根据情况选择版本及操作系统等。
五、安装 NVIDIA显卡驱动
参考更新NVIDIA显卡驱动。
六、安装CUDA
官网教程:https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#introduction
安装:
# 获取 cuda文件,这里根据自己实际情况选择版本 wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run # 执行 sudo sh cuda_11.8.0_520.61.05_linux.run
如下:
cuda配置:
gedit ~/.bashrc # 文本最后添加以下内容: export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64 export PATH=$PATH:/usr/local/cuda/bin export CUDA_HOME=$CUDA_HOME:/usr/local/cuda # 保存退出,打开新终端激活 source ~/.bashrc
cuda 卸载:
再安装好cuda会出现以下提示:
# .run 方式安装 uninstall the cuda toolkit ,run cuda-uninstaller in /usr/local/cuda-11.8/bin uninstall the NVIDIA Driver, run nvidia-uninstall Logfile is /var/log/cuda-installer.log
sudo apt autoremove cuda cd /usr/local/cuda/bin/ sudo ./cuda-uninstaller # 选中所有cuda相关选项 sudo rm -rf /usr/local/cuda-11.0 sudo rm -rf /usr/local/cuda
七、更新NVIDIA显卡驱动
Ubuntu更新nvidia显卡驱动的方法主要有两种:
7.1 利用ubuntu系统Software & Updates自动更新
具体操作步骤:
1.使用快捷键【Ctrl+Alt+T】打开终端命令模式。
2.输入以下命令添加官方ppa源。
sudo add-apt-repository ppa:graphics-drivers/ppa
3.输入密码并按enter键确认。
4.再输入命令刷新软件库
sudo apt-get update
5.安装最新驱动。
这里有两种方法:
5.1 命令行
sudo apt-get install nvidia-367nvidia-settings nvidia-prime
具体的版本根据自己的情况。
5.2 图形界面
系统右上角System Settings——Software & Updates——Additional Drivers,选择可用的nvidia驱动版本进行更新即可(可能需要重启)
5.安装成功后,可以通过以下命令查看是否安装成功。
nvidia-settings
注意:安装完成后需要重启ubuntu。
7.2 提前下载好显卡驱动,禁用系统自带的nouveau驱动,文本模式下进行手动更新
1. 查看你的显卡型号
lspci | grep -i nvidia
2.先官网下载好对应驱动编译
https://www.nvidia.cn/geforce/drivers/
根据显卡型号下载相应驱动版本。
3. 禁用nouveau驱动
查看是否成功禁用
只要是安装过NVIDIA显卡驱动的,nouveau一般都被禁止了。可以通过命令
lsmod | grep nouveau
查看。如果没有任何输出就是禁用成功了。否则,请参考禁用步骤。
禁用:https://blog.csdn.net/u013832707/article/details/93157805
禁用系统自带的 nouveau驱动方法如下:
#创建配置文件 sudo vim /etc/modprobe.d/blacklist-nouveau.conf # 在打开的配置文件里添加如下内容 blacklist nouveau options nouveau modeset=0 # 进行更新 sudo update-initramfs -u #重启,在终端输入如下,如果无输出,则禁用成功 lsmod | grep nouveau
4. 卸载原有驱动
# 如果用 .run 安装,用以下命令卸载
nvidia-uninstall
#
sudo apt-get remove --purge nvidia*
# 或者
sudo apt autoremove nvidia
5. 关闭图形界面,进入文本模式
好像高版本不需要关闭图形界面,进入文本模式,即不需要第5部,当然也不需要返回界面。具体是哪个版本之后。
# 如果是gnome桌面环境,执行
sudo service gdm3 stop // 我的是这个
# 如果是xfce桌面环境,执行
sudo service lightdm stop //按Ctrl+Alt+F1,关闭图形界面(黑屏)
6. 开始安装
在文本模式终端,进入下载的驱动程序.run文件目录,分别进行如下操作。
# 给文件夹执行权限,记得替换你的文件名 sudo chmod +x NVIDIA-Linux-x86_64-xxx.run 或者 sudo chmod a+x NVIDIA-Linux-x86_64-xxx.run //修改权限 # 开始安装,然后根据弹出界面,一路按 Enter sudo ./NVIDIA-Linux-x86_64-xxx.run 或者 sudo ./NVIDIA-Linux-x86_64-xxx.run -no-x-check -no-nouveau-check -no-opengl-files //安装如果找不到文件,那么说明文件名写错或者文件损坏。
开始安装后,都是默认设置,一路按 enter ,直接结束。
# 测试是否安装成功 nvidia-smi # 返回图形界面
# 如果是gnome桌面环境,执行
sudo service gdm3 start // 我的是这个
# 如果是xfce桌面环境,执行
sudo service lightdm start
八、更新 CUDA
cuDNN安装官方教程: https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html#overview
cudnn卸载:
sudo rm -rf /usr/local/cuda/include/cudnn.h sudo rm -rf /usr/local/cuda/lib64/libcudnn*