在 Ubuntu16.04 上的安装 CUDA9.0 和 cuDNN

- 为什么要安装CUDA9啊?

- 还不是因为tensorflow-gpu 1.5版本以上不支持CUDA8了 。。。

1 获取安装文件

1.1 获取 CUDA9.0

点击进入下载官方地址,根据自己的操作系统选择合适的安装包,然后点击download下载。
cuda download

cuda download

1.2 获取 cuDNN

cuDNN 的下载稍稍麻烦一些,需要登录并加入 NVIDIA 的开发者计划才有资格。
如果没有账号就注册一个,然后登录账号,点击此链接进行下载。
cudnn download

cudnn download


进入上述界面后,点击第2个选项(9.0 版本)。
cudnn download details

cudnn download details


这里选择第1个进行下载,解压后备用。

1.3 经验之谈

直接从官网下载是有点难的,建议找一些共享的网盘之类的,但是需要自己判断一下文件的安全问题!

2 卸载旧的版本(可选)

这一步是可选的,仅针对已经安装了CUDA的电脑。
先前已经安装了CUDA,需要先卸载后再安装。这里以8.0为例:

1
2
3
4
5
6
cd /usr/local/cuda-8.0/bin
sudo ./uninstall_cuda_8.0.pl

# 删除残留的 cuda-8.0 和 cuDNN
sudo rm -rf cuda-8.0
sudo rm -rf cudnn

3 安装 CUDA

1
2
3
4
5
sudo dpkg -i cuda***.deb
sudo apt-key add /var/cuda-repo-9-0-local/7fa2af80.pub
sudo apt update
# 这里必须指定一下版本,不然它会自动升级到最新版本
sudo apt install cuda=9.0.176-1

4 安装 cuDNN

1
2
3
4
5
6
7
8
9
# 进入你刚刚解压的 cudnn 目录
cd cuda/include/
sudo cp cudnn.h /usr/local/cuda/include/
sudo chmod a+r /usr/local/cuda/include/cudnn.h
cd ..
cd lib64
sudo cp libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
sudo ldconfig

如果在最后一步sudo ldconfig出现了错误:libcudnn.so.7 is not a symbolic link
请尝试使用下面命令解决:

1
2
3
4
5
6
7
# 检测问题
sudo ldconfig -v
# 找到错误
/sbin/ldconfig.real: /usr/local/cuda-9.0/targets/x86_64-linux/lib/libcudnn.so.7 is not a symbolic link
libcudnn.so.7 -> libcudnn.so.7.0.5
# 创建新链接
sudo ln -sf /usr/local/cuda-9.0/targets/x86_64-linux/lib/libcudnn.so.7.0.5 /usr/local/cuda-9.0/targets/x86_64-linux/lib/libcudnn.so.7

最后重启电脑。

5 最后的测试

创建一个test_gpu.py文件或者直接在 Python 交互命令行中输入:

1
2
3
4
5
import tensorflow as tf
device_name = tf.test.gpu_device_name()
if device_name != '/device:GPU:0':
raise SystemError('GPU device not found')
print('Found GPU at: {}'.format(device_name))

当你看到:

1
Found GPU at: /device:GPU:0

那么恭喜你🎉!

在 Ubuntu16.04 上的安装 CUDA9.0 和 cuDNN

https://blog.ailln.com/v2ai/2018/07/06/deep-learning/7-cuda9/

作者

Ailln

发布于

2018-07-06

更新于

2024-03-02

许可协议

评论

来发评论吧~
Powered By Valine
v1.4.16