参考链接https://blog.csdn.net/cpongo1/article/details/89541127
https://blog.csdn.net/sinat_23853639/article/details/80990967
目录
① 之前没有安装过CUDA+cudnn:(以安装cuda9.0为例)... 3
② 之前安装过CUDA+cudnn:(以卸载cuda8.0,安装cuda10.0为例).... 7
首先要明确你的系统版本,显卡型号,每装一个版本都需要验证成功后再继续,确保每一步的版本对应关系!!!!最好学习一些Linux的基本知识,零基础的同学请谨慎操作。如果系统之前没有安装过CUDA请从头开始,安装过的请直接从5②开始,使用cpu的同学请不要按照这个参考文件安装,直接安装tensorflow,keras,pytorch就好。
安装后续步骤或环境必需的依赖包,依次输入以下命令:
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
有一定几率安装失败而导致后续步骤出现问题,所以要确保以上依赖包都已安
成功,验证方法就是重新运行安装命令,如验证 git cmake build-essential是否装成功,则再次运行以下命令,成功的话会提示已安装:
安装好依赖包后需要禁用 nouveau,只有在禁用掉 nouveau 后才能顺利安装NVIDIA 显卡驱动,禁用方法就是在 /etc/modprobe.d/blacklist-nouveau.conf 文件中添加一条禁用命令,首先需要打开该文件,通过以下命令打开:
sudo vi /etc/modprobe.d/blacklist-nouveau.conf
打开后发现该文件中没有任何内容,写入:
保存时命令窗口可能会出现以下提示
** (gedit:4243): WARNING **: Set document metadata failed: 不支持设置属性 metadata::gedit-position
无视此提示~,保存后关闭文件,注意此时还需执行以下命令使禁用 nouvea真正生效:
电脑重启之后执行:
#没有输出,即说明安装成功
同样使用 vi命令打开配置文件
sudo vi ~/.bashrc
打开后在文件最后加入以下两行内容:
保存退出:
输入命令:source ~/.bashrc
手动去官网下载.run文件自己安装(要搞清楚显卡型号后再去找对应的文件下载)卸载原先的所有驱动:
安装驱动
进入命令行界面:Ctrl-Alt+F1 之后输入用户名和密码登录即可。Ctrl-Alt+F7 退出命令行界面。
输入:
sudo service lightdm stop
输入:
sudo chmod a+x NVIDIA-Linux-x86_64-390.59.run
sudo ./NVIDIA-Linux-x86_64-390.59.run –no-opengl-files
安装显卡驱动时,就一路Accept就可以,报错The distribution-provided pre-install script failed!,不必理会,继续安装。最重要的一步,安装程序问你是否使用NVIDIA的xconfig文件,如果是独显,这里一点要选yes,否则在启动x-window时不会使用nvidia驱动。安装提示基本是选肯定的,提示nvidia-xconfig时如果你的电脑还存在一个核显或者集显就选择不安装,选择no,反之选择安装yes。安装完毕后,重启:reboot (重启)。
如果已经存在,执行:nvidia-smi,有类似如下输出代表nvidia驱动正常
进入https://developer.nvidia.com/cuda-toolkit-archive找到对应的文件并下载
上面下载的1.6G的 CUDA中包含有 nvidia 显卡驱动,故此步骤 CUDA 的安装包括了 nvidia 显卡驱动的安装,若可以保证已安装正确的 nvidia 显卡驱动,则直接开始安装 CUDA 9.0,在安装过程中选择不再安装 nvidia 显卡驱动。为了方便开始安装过程的路径查找,把下载的 CUDA 安装文件移动到 HOME 路径下,然后通过 Ctrl + Alt + F1 进入文本模式,输入帐号密码登录,通过 Ctrl + Alt + F7 可返回图形化模式,在文本模式登录后首先关闭桌面服务:
sudo service lightdm stop
然后通过 Ctrl + Alt + F7 发现已无法成功返回图形化模式,说明桌面服务已成功关闭,注意此步对接下来的 nvidia 驱动安装尤为重要,必需确保桌面服务已关闭。
cd到.run 文件所处的路径下,安装cuda
其中 cuda_9.0.176_384.81_linux.run 是我的 CUDA 安装文件名,而你需替换为自己的 CUDA 安装文件名,若此时忘记可直接通过 ls 文件查看文件名,这也是我建议把 CUDA 安装文件移动到 HOME 下的另一个原因。按q结束cuda的描述等,然后输入accept,然后是提示是否安装NVIDIA驱动,因为之前已经安装过,就输入n,下一个提示是是否安装CUDA Toolkit,输入y,后面的提示都是使用默认或者y了,安装完会显示哪些安装成功,哪些安装失败,一般都会没有问题的,按照步骤安装,第一个就是问你是否安装显卡驱动,由于前一步已经安装了显卡驱动,所以这里就不需要了,况且 runfile 自带的驱动版本不是最新的。
剩下的选择则都输入“y”确认安装或确认默认路径安装,开始安装,此时若出现安装失败提示则可能为未关闭桌面服务或在已安装 nvidia 驱动的情况下重复再次安装 nvidia 驱动,安装完成后输入重启命令重启:reboot
重启后登录进入系统,配置 CUDA 环境变量,使用 vi 命令打开配置文件:
sudo vi ~/.bashrc
在该文件最后加入以下两行并保存:
使该配置生效:
验证 CUDA 9.0 是否安装成功
分别执行以下三条命令:
若看到类似以上信息则说明 cuda 已安装成功:
安装对应的cudnn:
登录官网:https://developer.nvidia.com/rdp/cudnn-download ,下载对应 cuda 版本且 linux 系统的 cudnn 压缩包,注意官网下载 cudnn 需要注册帐号并登录。
下载以下4个文件:
然后解压tgz包, 复制文件到cuda环境, 接着安装deb包.(以下名字要换成你下载文件的对应四个名字)
安装完成后可用 nvcc -V 命令验证是否安装成功,若出现以下信息则表示安装成功:
由于不同版本的tensorflow对于CUDNN的版本要求不同,所以有时需要对CUDNN进行更换。具体版本的对应关系如下:
https://blog.csdn.net/oMoDao1/article/details/83241074
卸载CUDA:(使用cuda的卸载工具,不同版本的名字不同,请先查看你的cuda版本)
卸载之后,会发现 /usr/local/cuda-8.0目录下任然有文件存在,这是cudnn文件,所以还需要将cuda-8.0文件删除干净:
进入https://developer.nvidia.com/cuda-toolkit-archive找到对应的文件并下载
md5检测一下, 不合格要重新下载:
关闭图形界面:
输入:
同样不要选择安装显卡驱动!!!!!!!!!
安装后,添加环境变量:
写入:
激活:
验证是否安装成功:
出现以下类似信息则安装成功:
安装对应的cudnn:
然后解压tgz包, 复制文件到cuda环境, 接着安装deb包.
验证是否安装成功:
出现以下信息则表明安装成功: