手把手教你在 Ubuntu16.04 安装 GPU 驱动 + CUDA9.0 + cuDNN7

简介: 手把手教你在 Ubuntu16.04 安装 GPU 驱动 + CUDA9.0 + cuDNN7

如果你的电脑安装了 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 官网:


https://www.geforce.cn/drivers


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


image.png


如上图所示,结果会显示可用的 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


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


image.png


最后,回到图像界面。


$ sudo /etc/init.d/lightdm start


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


二、安装 CUDA9.0


1、首先,登录 CUDA 的下载网站:


https://developer.nvidia.com/cuda-downloads


由于现在 CUDA 的版本已经更新到 10 了,我们需要安装 9.0 版本。因此,点击 Legacy Releases,进入之前的版本列表。


image.png


然后,在 CUDA 版本列表中,选择 9.0 版本。


image.png


选择对应的系统等信息,就可以点击 Download 进行下载了。注意选择下载 runfile 文件。


image.png


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


image.png


验证 CUDA 版本:9.0


$$ nvcc -V


image.png


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


三、安装 cuDNN


1、首先,进入 cuDNN 的下载网站:


https://developer.nvidia.com/rdp/cudnn-download


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


image.png


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 环境配置完成。


参考文献:

https://blog.csdn.net/weixin_41864878/article/details/79621210

相关实践学习
在云上部署ChatGLM2-6B大模型(GPU版)
ChatGLM2-6B是由智谱AI及清华KEG实验室于2023年6月发布的中英双语对话开源大模型。通过本实验,可以学习如何配置AIGC开发环境,如何部署ChatGLM2-6B大模型。
相关文章
|
11月前
|
并行计算 PyTorch TensorFlow
Ubuntu安装笔记(一):安装显卡驱动、cuda/cudnn、Anaconda、Pytorch、Tensorflow、Opencv、Visdom、FFMPEG、卸载一些不必要的预装软件
这篇文章是关于如何在Ubuntu操作系统上安装显卡驱动、CUDA、CUDNN、Anaconda、PyTorch、TensorFlow、OpenCV、FFMPEG以及卸载不必要的预装软件的详细指南。
10860 4
|
6月前
|
Ubuntu PHP 数据库
|
机器学习/深度学习 人工智能 并行计算
GPU算力平台:数字化转型的核心驱动力
【8月更文第5天】随着人工智能(AI)、大数据分析以及高性能计算需求的不断增长,图形处理器(GPU)因其卓越的并行计算能力而成为加速这些领域的关键技术。GPU算力平台不仅能够显著提升计算效率,还能帮助企业更好地处理大规模数据集,支持复杂的机器学习模型训练,并促进实时数据分析。本文将探讨GPU算力平台在数字化转型中的核心作用,并通过示例代码展示其在实际应用中的优势。
558 1
|
并行计算 TensorFlow 算法框架/工具
Windows11+CUDA12.0+RTX4090如何配置安装Tensorflow2-GPU环境?
本文介绍了如何在Windows 11操作系统上,配合CUDA 12.0和RTX4090显卡,通过创建conda环境、安装特定版本的CUDA、cuDNN和TensorFlow 2.10来配置TensorFlow GPU环境,并提供了解决可能遇到的cudnn库文件找不到错误的具体步骤。
1862 3
|
并行计算 TensorFlow 算法框架/工具
Window安装TensorFlow-GPU版本
Window安装TensorFlow-GPU版本
294 0
|
Linux TensorFlow 算法框架/工具
安装GPU版本的TensorFlow
【7月更文挑战第3天】安装GPU版本的TensorFlow。
460 1
|
Ubuntu Shell Docker
GPU_nvidia-container-toolkit安装和配置
GPU_nvidia-container-toolkit安装和配置
3198 1
|
Ubuntu Linux
【问题复盘】在Ubuntu 20.04下安装OFED驱动 复盘:在Ubuntu 20.04下安装OFED驱动
整个问题主要是由于不同的内核版本导致文件路径不同,进而导致安装过程中某些库无法按预期安装而出现问题。 为什么使用最新的OFED驱动解决了问题呢?推测是最新驱动补充了之前缺失的某些文件,因此后续安装过程能够正常进行。 例如,在OFED 5.4中,某个安装所需的文件F位于A处,但安装程序却在B处查找该文件,导致报错。而在OFED 5.8中,该安装所需的文件F被移回到B处,此时不管去哪里查找都能找到文件F,因此安装可以正常进行。
929 0
|
JavaScript Ubuntu 前端开发
Ubuntu部署Minio(单机单驱动)
Ubuntu部署Minio(单机单驱动)
159 0
|
TensorFlow 算法框架/工具 C++
在有GPU的windows上安装TensorFlow
在有GPU的windows上安装TensorFlow
356 0