阿里云CentOS7下安装CUDA 9.0 + CUDNN 7.

2018-10-19  本文已影响369人  东风2020

版本

tensorflow-gpu 版本 1.11.0
CUDA 版本 9.0(注:pip安装的tensorflow只支持9.0版本,不支持最新10.0以及9.1、9.2)
cudnn 7.3 (for CUDA 9.0)

下载链接

CUDA 9.2 https://developer.nvidia.com/cuda-92-download-archive?target_os=Linux
CUDA 9.0 https://developer.nvidia.com/cuda-90-download-archive?target_os=Linux
cudnn 7.3 https://developer.nvidia.com/rdp/cudnn-download (要注册开发者帐号,啰嗦无比)

屏蔽默认带有的nouveau(默认 GPU 驱动)

1、打开/lib/modprobe.d/dist-blacklist.conf
2、编辑该文件,操作如下:
将nvidiafb注释掉: #blacklist nvidiafb
然后添加以下语句:
blacklist nouveau
options nouveau modeset=0

3、重建initramfs image步骤

mv /boot/initramfs-(uname -r).img /boot/initramfs-(uname -r).img.bak
dracut /boot/initramfs-(uname -r).img(uname -r)

4、修改运行级别为文本模式
systemctl set-default multi-user.target

5、重新启动, 使用root用户登陆
reboot

6、查看nouveau是否已经禁用
lsmod | grep nouveau

准备工作

建议参考官方文档 https://developer.download.nvidia.com/compute/cuda/9.2/Prod2/docs/sidebar/CUDA_Installation_Guide_Linux.pdf

安装 dkms

yum install epel-release
yum install --enablerepo=epel dkms

安装 kernel 的相关包

yum install kernel*

下载 CUDA 的直接可执行包

下载 CUDA 9.0 和 CUDA 9.2 (这里不下载 rpm 包)

安装和运行 CUDA 9.2 安装 NVIDIA Driver 和 toolkit

sh cuda_9.2.148_396.37_linux

验证 Nvidia 驱动

dkms status
nvidia-smi

安装CUDA 9.0

1、卸载 CUDA 9.2 的 toolkit
/usr/local/cuda-9.2/bin/uninstall_cuda_9.2.pl

2、安装 CUDA 9.0 但是不要安装 NVIDIA Driver (执行中有选项)
sh cuda_9.0.176_384.81_linux-run

验证驱动

./usr/local/cuda-9.1/extras/demo_suite/deviceQuery

安装 cudnn 7.3 参考官方文档

https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html
一共4步
tar -xzvf cudnn-9.0-linux-x64-v7.tgz
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 /usr/local/cuda/lib64/libcudnn*

设置路径

添加 /usr/local/cuda-9.0/bin 到 PATH
添加 /usr/local/cuda-9.0/lib64 到 LD_LIBRARY_PATH
具体参考官方文档里面的命名建议 https://developer.download.nvidia.com/compute/cuda/9.2/Prod2/docs/sidebar/CUDA_Installation_Guide_Linux.pdf

安装 tensorflow

pip install tensorflow-gpu (默认安装1.11.0)

代码验证

import tensorflow as tf
sess = tf.Session()

常见问题

1、执行 nvidia-smi,一直报 “NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver ...... ”

NVIDIA 驱动安装不正确,需要重装,先执行 nvidia-uninstall 卸载,再重装驱动

2、libcublas.so.9.0: cannot open shared object file: No such file or directory

LD_LIBRARY_PATH 未正确设置,或者安装了9.2的CUDA(因此没找到9.0的 so 文件)

其他

yum list <package_name> --showduplicates
yum install <pacakge_name>-<version>

上一篇下一篇

猜你喜欢

热点阅读