一、NVIDAI driver显卡驱动安装
首先看一下笔记本显卡型号
lspci |grep VGA
在命令行敲过这个命令后,有些台式机或笔记本会显示nvidia显卡,如下所示:
但是我的笔记本电脑 只显示nouveau卡(集成显卡)
需要执行下面命令才能找到nvidia显卡
lspci |grep 3D
a.下载nvidia driver 安装包
https://www.geforce.cn/drivers/beta-legacy
下载cuda 安装包
https://developer.nvidia.com/cuda-toolkit-archive
cuda和nvidia驱动的版本要求如下:
在下载cuda安装文件的时候,在那个界面的最下方有一个安装指导书( Installation Guide for Linux),按照官网的指导应该是可以正确安装的。
在这个文档中一般会说明cuda要求的系统内核的最低版本,cuda9.0要求系统内核版本为4.4,有些情况下需要降低系统内核才能安装成功,降低系统内核版本的方法详见:https://jingyan.baidu.com/article/5552ef47fe57b6518ffbc991.html
b.禁用nouveau卡
在/etc/modprobe.d中创建文件blacklist-nouveau.conf
sudo vim /etc/modprobe.d/blacklist-nouveau.conf
在文件中输入以下内容:
blacklist nouveau options nouveau modeset=0
执行
sudo update-initramfs -u
更新状态,查看nouveau是否已经成功禁用
lsmod | grep nouveau
若无内容输出,则禁用成功,若仍有内容输出,请检查上述操作,并重复。
c.安装nvidia驱动
ctrl+alt+F1 进入命令行界面,登录账号密码进入系统。
关闭图形化界面,否则系统不能正常安装驱动
sudo service lightdm stop
卸载系统残留的nvidia驱动:
sudo /usr/bin/nvidia-uninstall sudo apt-get remove --purge nvidia*
给刚才下载的nvidia 驱动赋予权限
sudo chmod a+x NVIDIA-Linux-x86_64-418.56.run
安装nvidia驱动: 注意: --no-opengl-files 选项使系统不会在登录界面反复循环
sudo ./NVIDIA-Linux-x86_64-396.18.run -no-opengl-files
安装过程中的选项:
The distribution-provided pre-install script failed! Are you sure you want to continue? 选择 yes 继续。
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 继续。
问题没记住,选项是:install without signing
问题大概是:Nvidia’s 32-bit compatibility libraries? 选择 No 继续。
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 继续。(来自博客https://blog.csdn.net/lihe4151021/article/details/90083431)
打开图形化界面:
sudo service lightdm start
打开一个terminal,输入
nvidia-smi nvidia-settings
出现一下信息:代表安装成功
若出现下面的问题:
NVIDIA-SMI has failed because it couldn‘t communicate with NVIDIA driver. Make sure that the latest driver is installed and running.
则输入下面的命令, 其中390.129 修改成自己显卡驱动版本,查看方式 cd /usr/src
然后输入ls
,就可以看到产看到自己显卡驱动的版本。
sudo apt-get install dkms sudo dkms install -m nvidia -v 390.129
一般人到这里显卡驱动就完全安装完成了,但是:当输入nvidia-settings
时,我的电脑弹出一个对话框:You do not appear to be using the NVIDIA X driver. Please edit your X config。我也不知道什么问题,后来也没有解决,我跳过了这个问题,直接安装cuda。
二、安装与卸载cuda
注意:cuda安装版本一定要与显卡驱动版本相对应!!!
a.安装cuda
下载对应版本地址:https://developer.nvidia.com/cuda-toolkit-archive
ctrl+alt+F1 进入命令行界面,登录账号密码进入系统。
关闭图形化形化界面
sudo service lightdm stop
安装cuda:
sudo sh cuda_8.0.61_375.26_linux.run
一直按回车,直至100%。
键入:accept
和一系列yes
询问是否安装driver 一般是键入 no, 因为上面已经安装成功了。
(但是我考虑我以前安装的那个驱动没有成功,我就键入了yes.,一般情况如果安装了驱动,千万不要键入yes!!!!!)
重启图形化界面:
sudo service lightdm start
设置环境变量:
打开主目录下的 .bashrc文件添加如下路径,例如我的.bashrc文件在/home/wangyuanwei下,如果没有找到,则按Ctrl+H键显示隐藏文件。
在文件最后加入如下语句,注意路径中cuda 版本(比如 cuda-8.0)要根据自己安装的cuda版本进行替换。
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-8.0/lib64 export PATH=$PATH:/usr/local/cuda-8.0/bin export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-8.0
在命令行敲入如下命令,更新环境变量:
source ~/.bashrc
在命令行敲入如下命令:
nvcc --version
若显示:
则说明安装成功。
b.卸载CUDA
为什么一开始我就要卸载CUDA呢,这是因为笔者是换了显卡RTX2070,原本就安装了CUDA 8.0 和 CUDNN 7.0.5不能够正常使用,笔者需要安装CUDA 10.0 和 CUDNN 7.4.2,所以要先卸载原来的CUDA。注意以下的命令都是在root用户下操作的。
卸载CUDA很简单,一条命令就可以了,主要执行的是CUDA自带的卸载脚本,读者要根据自己的cuda版本找到卸载脚本:
sudo /usr/local/cuda-8.0/bin/uninstall_cuda_8.0.pl
卸载之后,还有一些残留的文件夹,之前安装的是CUDA 8.0。可以一并删除:
sudo rm -rf /usr/local/cuda-8.0/
三、安装cudnn
注意:cudnn版本一定要与python版本对应!!!
a、TensorFlow与Python, CUDA, cuDNN的版本对应关系
Version | Python version | Compiler | Build tools | cuDNN | CUDA |
tensorflow_gpu-1.13.1 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.19.2 | 7.4 | 10.0 |
tensorflow_gpu-1.12.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.15.0 | 7 | 9 |
tensorflow_gpu-1.11.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.15.0 | 7 | 9 |
tensorflow_gpu-1.10.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.15.0 | 7 | 9 |
tensorflow_gpu-1.9.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.11.0 | 7 | 9 |
tensorflow_gpu-1.8.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.10.0 | 7 | 9 |
tensorflow_gpu-1.7.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.9.0 | 7 | 9 |
tensorflow_gpu-1.6.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.9.0 | 7 | 9 |
tensorflow_gpu-1.5.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.8.0 | 7 | 9 |
tensorflow_gpu-1.4.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.5.4 | 6 | 8 |
tensorflow_gpu-1.3.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.4.5 | 6 | 8 |
tensorflow_gpu-1.2.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.4.5 | 5.1 | 8 |
tensorflow_gpu-1.1.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.4.2 | 5.1 | 8 |
tensorflow_gpu-1.0.0 | 2.7, 3.3-3.6 | GCC 4.8 | Bazel 0.4.2 | 5.1 | 8 |
cudnn 下载地址:https://developer.nvidia.com/rdp/cudnn-archive
需要注册帐号登入进去才能下载cudnn
选择符合自己cuda版本的下载“cuDNN Library for Linux”那一个
我们从Nvidia官网上下载下来的cudnn for linux的文件格式是.solitairetheme8,想要解压的话需要先转成tgz格式再解压:
cp cudnn-8.0-linux-x64-v5.1.solitairetheme8 cudnn-8.0-linux-x64-v5.1.tgz
tar -xvf cudnn-8.0-linux-x64-v5.1.tgz
解压后,会看到cuda文件夹, 在当前路径打开terminal, 输入如下语句:
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*
查看cudnn版本:
在终端输入
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
若出现:
则说明cudnn 安装成功。
至此显卡已经全部配置好了,接下来可以安装anaconda 创建环境 下载库进行深度学习研究了。
本人觉得这个安装指南写的比较全面:
https://blog.csdn.net/wanzhen4330/article/details/81699769