环境:ubuntu 20.04
安装驱动
卸载
完全卸载NVIDIA驱动
sudo apt-get --purge remove nvidia*
sudo apt-get --purge remove "*nvidia*"
sudo apt-get --purge remove "*cublas*" "cuda*"
sudo apt autoremove
禁用nouveau
编辑文件blacklist.conf
sudo vi /etc/modprobe.d/blacklist.conf
在文件最后部分插入以下两行内容
blacklist nouveau
options nouveau modeset=0
更新系统
sudo update-initramfs -u
重启系统(一定要重启)
reboot
验证nouveau是否已禁用
lsmod | grep nouveau
没有信息显示,说明nouveau已被禁用,接下来可以安装nvidia的显卡驱动。
安装
在英伟达的官网上查找你自己电脑的显卡型号然后下载相应的驱动。网址:http://www.nvidia.cn/page/home.html
给驱动run文件赋予执行权限
sudo chmod a+x NVIDIA-Linux-x86_64-396.18.run
安装依赖
sudo apt install gcc make -y
安装
sudo ./NVIDIA-Linux-x86_64-396.18.run -no-x-check -no-nouveau-check -no-opengl-files
说明:
- -no-x-check:安装驱动时关闭X服务
- -no-nouveau-check:安装驱动时禁用nouveau
- -no-opengl-files:只安装驱动文件,不安装OpenGL文件,只有禁用opengl这样安装才不会出现循环登陆的问题
挂载Nvidia驱动
modprobe nvidia
检查驱动是否安装成功:
nvidia-smi
cuda安装
sudo ./cuda_9.2.148_396.37_linux.run --override
注意:
- 有时gcc版本检查会中断安装,可以加上–override参数,后面再处理版本问题
- cuda里面有显卡驱动,一定选不要安装!!!安装后会替换掉系统中已有驱动!!!
切换gcc版本
方法1:软连接
老版本的cuda对只支持老版本的gcc,可以手工制指定gcc版本
sudo apt -y install gcc-7 g++-7
sudo ln -s /usr/bin/gcc-7 /usr/local/cuda/bin/gcc
sudo ln -s /usr/bin/g++-7 /usr/local/cuda/bin/g++
方法2:用update-alternatives管理
将某个版本加入gcc候选中,最后的数字是优先级
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 7
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 7
手工选择版本
sudo update-alternatives --config gcc
sudo update-alternatives --config g++
cudnn安装
参考官方文档
tar -xzvf cudnn-x.x-linux-x64-*.tgz
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 /usr/local/cuda/lib64/libcudnn*
切换cuda和cudnn版本
sudo rm /usr/local/cuda; #删除软连接
sudo ln -s /usr/local/cuda-11.1 /usr/local/cuda; #将软连接指向对应版本的cuda目录
参考
https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html
https://blog.csdn.net/qq_30468723/article/details/107531062
https://blog.csdn.net/Thanlon/article/details/106125738