Ubunt16.04 搭建 GPU 显卡驱动 + CUDA9.0 + cuDNN7 详细教程

红色石头的个人网站:www.redstonewill.com

如果你的电脑安装了 Ubuntu16.04,而且电脑自带一块 NVIDIA GeForce 的 GPU 显卡,那么不用来跑深度学习模型就太可惜了!关于这方面的网上教程很多,但大都良莠不齐。这篇文章将手把手教你如何安装 GPU 显卡驱动、CUDA9.0 和 cuDNN7。值得一试!

注意:由于不同系统,不同 GPU 对应的 CUDA 和 cuDNN 均有差异,本文仅以 Ubuntu16.04、NVIDIA GeForce GPU、CUDA9.0 和 cuDNN7 为例,来介绍安装过程。其它版本过程类似,但存在细微差别,请读者以实践为主。

必要条件

工欲善其事必先利其器,首先确定你的电脑满足下面两个条件。

  • 安装 Ubuntu16.04
  • 电脑自带一块 NVIDIA GeForce GPU 显卡

一、安装 GPU 显卡驱动

有一块 NVIDIA GPU 显卡 还不够,还需要安装 GPU 显卡驱动。

1、首先登陆 GeForce 官网,在手动搜索驱动程序里,选择自己对于的系统,注意是“Linux 64-bit”。其他选项默认即可。然后,点击开始搜索,将会自动搜索你的电脑相匹配的 GPU 显卡驱动,搜索结果如下图所示:

在这里插入图片描述
如上图所示,结果会显示可用的 GPU 显卡驱动程序,确定你需要的版本,直接点击就可以下载了。例如我选择的版本是418.43,下载后的文件是 NVIDIA-Linux-x86_64-418.43.run

2、打开终端 Terminal,首先卸载系统之前安装的 NVIDIA 显卡驱动,以防万一。(没有安装的可以忽略这一步)

$ sudo apt-get --purge remove nvidia-*

3、打开 blacklist:

$ sudo gedit /etc/modprobe.d/blacklist.conf

在最后添加几行:

blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv

这时候在终端输入:

$ lsmod | grep nouveau

如果没有输出,可以直接进行下一步,安装驱动。如果仍有输出,则在终端输入:

$ sudo gedit /etc/modprobe.d/blacklist-nouveau.conf

直接写入:

blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off

保存关闭,再在终端输入下面的命令验证是否没有输出了。

$ sudo update-initramfs -u
$ lsmod | grep nouveau
# 如果这样还有输出,reboot一次

到这一步,应该没有输出了,可以进行安装驱动了。

4、在正式安装驱动之前,请记住你的驱动的 .run 文件的下载路径和完整的文件名。按 Ctrl+Alt+F1 进入命令行界面,输入下面的命令:

$ sudo /etc/init.d/lightdm stop
$ sudo init 3

进入 .run 文件的下载路径,使用 chmod 命令增加 .run 文件的运行权限。

$ chmod a+x NVIDIA-Linux-x86_64-418.43.run
$ sudo ./NVIDIA-Linux-x86_64-418.43.run -no-x-check -no-nouveau-check -no-opengl-files  #这里是关闭x server,nouveau和不下载opengl文件

然后就会开始安装程序,安装完成之后,输入下面的命令:

$ nvidia-smi

如果出现与下面类似的结果,证明驱动安装成功了。

在这里插入图片描述
最后,回到图像界面。

$ sudo /etc/init.d/lightdm start

这样,驱动就算正式安装成功了。

二、安装 CUDA9.0

1、首先,登录 CUDA 的下载网站,由于现在 CUDA 的版本已经更新到 10 了,我们需要安装 9.0 版本。因此,点击 Legacy Releases,进入之前的版本列表。

在这里插入图片描述然后,在 CUDA 版本列表中,选择 9.0 版本。

在这里插入图片描述
选择对应的系统等信息,就可以点击 Download 进行下载了。注意选择下载 runfile 文件。

在这里插入图片描述
2、打开终端,进入 CUDA9.0 的下载目录,输入:

$ chmod a+x cuda_9.0.176_384.81_linux.run
$ sudo ./cuda_9.0.176_384.81_linux.run

然后就会进入安装。在安装过程中会询问你一些配置信息,一般直接选择默认选项就行。有一个必须注意的地方是会让你选择是否安装 Graphics Driver for Linux-x86_64:XXXX 版本,这个地方必须选择 no!否则会覆盖之前的驱动。

3、安装完毕之后,声明环境变量。打开 .bashrc 文件,在终端输入:

$ sudo gedit ~/.bashrc

在文件最后加上:

export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

保存退出。

$ source ~/.bashrc

4、验证 GPU 驱动版本:418.43

$ cat /proc/driver/nvidia/version

在这里插入图片描述

验证 CUDA 版本:9.0

$$ nvcc -V

在这里插入图片描述

5、还有可能遇到的问题是没有安装 gcc 或者 gcc 版本过高需要手动进行降级,都比较好解决,这里就不再赘述了。

三、安装 cuDNN

1、首先,进入 cuDNN 的下载网站。值得一提的是,下载之前是需要先注册账号。在下图所示的版本列表中,选择适配 CUDA9.0 的,对应的是 Linux 系统。

在这里插入图片描述
2、下载完毕之后,解压:

$ tar -zxvf cudnn-9.0-linux-x64-v7.6.1.34.tgz

解压命令输出如下:

cuda/include/cudnn.h
cuda/NVIDIA_SLA_cuDNN_Support.txt
cuda/lib64/libcudnn.so
cuda/lib64/libcudnn.so.7
cuda/lib64/libcudnn.so.7.6.1
cuda/lib64/libcudnn_static.a

拷贝相关文件至指定目录:

$ sudo cp cuda/include/cudnn.h /usr/local/cuda/include/
$ sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/

3、到本地 cuda 路径,创建软连接,终端输入:

$ cd /usr/local/cuda/lib64
$ sudo chmod +r libcudnn.so.7.6.1
$ sudo ln -sf libcudnn.so.7.6.1 libcudnn.so.7  
$ sudo ln -sf libcudnn.so.7 libcudnn.so  
$ sudo ldconfig  

注意,这里的文件名即版本号就参照之前解压出来的文件名对照着写。

4、到本地 cuda 路径下检测一下:

$ cd /usr/local/cuda/lib64
$ ll

出现 cuDNN 对应的版本号就证明安装成功!

lrwxrwxrwx  1 root root        13 3月  19 16:02 libcudnn.so -> libcudnn.so.7*
lrwxrwxrwx  1 root root        17 3月  19 16:02 libcudnn.so.7 -> libcudnn.so.7.6.1*
-rwxr-xr-x  1 root root 287641664 3月  19 16:00 libcudnn.so.7.6.1*

大功告成!GPU 显卡驱动 + CUDA9.0 + cuDNN7 环境配置完成。

参考文献:

Ubuntu16.04搭建GTX1080+CUDA9.0+cuDNN7.0.5+Tensorflow1.6.0环境


在这里插入图片描述

发布了251 篇原创文章 · 获赞 1024 · 访问量 137万+

猜你喜欢

转载自blog.csdn.net/red_stone1/article/details/98959007