一、查看并卸载已经有的驱动
查看显卡驱动
nvidia-smi
卸载曾经安装的NVIDIA版本
sudo apt-get remove –purge nvidia*
禁用 nouveau(系统自带的显卡驱动),只有在禁用掉 nouveau 后才能顺利安装 NVIDIA 显卡驱动。
sudo gedit /etc/modprobe.d/blacklist.conf
输入密码后在最后一行加上:
blacklist nouveau
将Ubuntu自带的显卡驱动加入黑名单,Ctrl +s保存后注意此时还需执行以下命令使禁用 nouveau 真正生效终端输入 :
sudo update-initramfs -u
输入以下命令,没有任何返回说明已经干掉nouveau
lsmod | grep nouveau
二、首先重启电脑,在开机界面进去BIOS设置
找到Secure boot选项将该选项关闭,F10保存并退出
安装显卡驱动
1.第一种方法是通过ubuntu的软件更新安装驱动
选择合适的驱动后,点击应用更改,安装完成之后在终端输入 nvidia-smi可以查看刚刚安装的显卡驱动版本,但是通过这办法重启之后我进不去图形界面,出现黑屏且左上角一直闪烁横线,Ctrl+Alt+F2通过非图形界面进入系统,在非图形界面中输入nvidia-smi显示不出我的显卡驱动版本,还有一种情况就是出现了我安装的显卡驱动版本,但是可能版太新了依旧进不去图形界面,只好把显卡驱动再次重新卸载
sudo apt-get remove –purge nvidia*
重启之后可以成功进入图形界面,几次尝试终于安装成功510版本的驱动
期间可能遇到无法访问网络的问题,这里就一次性写完:Ubuntu更换清华源的问题:首先备份原来的源,以防万一
sudo cp /etc/apt/sources.list /etc/apt/sources.list1
打开源文件更换内容
sudo gedit /etc/apt/sources.list
将以下内容复制到文件中
#添加清华源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse multiverse
更新
sudo apt-get update
sudo apt-get upgrade
更新软件安装源过后安装应该就没有问题了
2.通过官网下载进行安装
1.从官网 https://www.nvidia.cn/Download/index.aspx?lang=cn下载合适的NVIDIA驱动
在上面的网站输入自己的显卡型号以及操作系统,搜索对应的显卡驱动版本,进行下载
进入下载目录 ,赋予可执行权限并通过命令行安装:
sudo chmod 777 NVIDIA-Linux-x86_64-515.86.01.run
sudo ./NVIDIA-Linux-x86_64-515.86.01.run(–no-opengl-files)
安装驱动的时候后遇到的问题:
1.The distribution-provided pre-install script failed! Are you sure you want to continue?
----continue installation
2.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
3.----install without signing
4.Nvidia's 32-bit compatibility libraries?
----No
5.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.
----Yes
完成后重启在终端输入nvidia-smi即可查看驱动版本
二、安装CUDA 11.6
1.根据自己的NVIDIA驱动版本以及自己的需求选择合适的CUDA版本,查看nvidia与CUDA版本对应关系:
https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
2.到官网下载合适的CUDA版本
https://developer.nvidia.com/cuda-toolkit-archive
3.根据官网后面的命令进行安装(可以选择run文件,也可以是deb文件)
wget https://developer.download.nvidia.com/compute/cuda/11.6.0/local_installers/cuda_11.6.0_510.39.01_linux.run
sudo bash cuda_11.6.0_510.39.01_linux.run
运行安装文件后会出现以下问题,照着流程来就行了
选择Continue继续安装,这是因为我在写教程之前已经装过一遍了,所以会有些许出入
终端输入accept接受协议
取消勾选显卡驱动,因为前面已经安装过显卡驱动了,所以这里就不用再安装一遍,除了显卡驱动,其他的都需要勾选。
根据提示选择是否安装,我安装的时候只出现了两个需要确认的选项,并且都是选择yes需要继续安装,如果这里出现了太多签名选项,原因是前面BIOS设置没有设置成功,重新设置一下即可。
4.配置环境变量
gedit ~/.bashrc
在文件末尾加入以下语句并保存
export CUDA_HOME=/usr/local/cuda
export PATH=$PATH:$CUDA_HOME/bin
export LD_LIBRARY_PATH=/usr/local/cuda-11.6/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
更新环境变量配置
source ~/.bashrc
5.查看CUDA版本:终端输入
nvcc-V
得到
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Fri_Dec_17_18:16:03_PST_2021
Cuda compilation tools, release 11.6, V11.6.55
Build cuda_11.6.r11.6/compiler.30794723_0
6.通过编译一个CUDA自带的sample文件测试是否成功安装
cd /usr/local/cuda/samples/1_Utilities/deviceQuerye
sudo make
./deviceQuery
显示结果如下:
Detected 1 CUDA Capable device(s)
Device 0: "GeForce GTX 1050"
CUDA Driver Version / Runtime Version 10.2 / 10.2
CUDA Capability Major/Minor version number: 6.1
Total amount of global memory: 4042 MBytes (4238737408 bytes)
( 5) Multiprocessors, (128) CUDA Cores/MP: 640 CUDA Cores
GPU Max Clock rate: 1493 MHz (1.49 GHz)
Memory Clock rate: 3504 Mhz
Memory Bus Width: 128-bit
L2 Cache Size: 524288 bytes
Maximum Texture Dimension Size (x,y,z) 1D=(131072), 2D=(131072, 65536), 3D=(16384, 16384, 16384)
Maximum Layered 1D Texture Size, (num) layers 1D=(32768), 2048 layers
Maximum Layered 2D Texture Size, (num) layers 2D=(32768, 32768), 2048 layers
Total amount of constant memory: 65536 bytes
Total amount of shared memory per block: 49152 bytes
Total number of registers available per block: 65536
Warp size: 32
Maximum number of threads per multiprocessor: 2048
Maximum number of threads per block: 1024
Max dimension size of a thread block (x,y,z): (1024, 1024, 64)
Max dimension size of a grid size (x,y,z): (2147483647, 65535, 65535)
Maximum memory pitch: 2147483647 bytes
Texture alignment: 512 bytes
Concurrent copy and kernel execution: Yes with 2 copy engine(s)
Run time limit on kernels: No
Integrated GPU sharing Host Memory: No
Support host page-locked memory mapping: Yes
Alignment requirement for Surfaces: Yes
Device has ECC support: Disabled
Device supports Unified Addressing (UVA): Yes
Device supports Compute Preemption: Yes
Supports Cooperative Kernel Launch: Yes
Supports MultiDevice Co-op Kernel Launch: Yes
Device PCI Domain ID / Bus ID / location ID: 0 / 1 / 0
Compute Mode:
< Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >
deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 10.2, CUDA Runtime Version = 10.2, NumDevs = 1
Result = PASS
最后结果显示pass就是通过了,这里需要注意的是,我这里粘贴的是在旧电脑安装CUDA 10.2的截图,新电脑的版本是CUDA 11.6,运行上面的内容会找不到文件,于是打开路径中的sampales发现高版本的CUDA已经不配备测试DEMO了,只能自己去网上下载来编译,这里附上地址:https://github.com/nvidia/cuda-samples,但是我下载之后发现跟我之前版本的不太一样,而且编译会出错,我就放弃了,最后通过运行我的项目来测试的CUDA,安装是没有问题的。
三、cuDNN安装
1.官方下载网址:
https://developer.nvidia.com/rdp/cudnn-download
注:下载cuDNN需要注册Nvidia Developer账户
2.观察好cuDNN与CUDA的兼容性再选择版本:https://docs.nvidia.com/deeplearning/cudnn/support-matrix/index.html#cudnn-cuda-hardware-versions
3.配置cuDNN
解压下载好的文件夹并进入
sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
以上命令分别文复制文件到新路径并对其赋予执行权限
4.验证:终端输入命令:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
输出7.6.5 则CUDnn安装完成。(我在这里又翻车了,并没有输出这个版本,我又看了一下实验室服务器的CUDnn版本,发现同样会出现这个问题,所以我就默认认为他是安装好了的,但是这个在我旧电脑上安装的时候确实是会反馈出CUDNN的版本的,但是最后我配置的环境也是可以用的,就不再计较了。
版权归原作者 ZCONG呀 所有, 如有侵权,请联系我们删除。