【解决】Centos7 安装NVDIA GPU+TensorFlow-gpu1.5.0

由于项目需要,需要安装tensorflow-gpu1.5.0到Centos环境下。

环境介绍:
Centos7
gcc-4.8.5
python3.5

我用的GPU的种类是:GeForce GTX1080 Ti,是英伟达的GeForce系列10的产品。

安装TensorFlow-GPU版本需要先安装后GPU。之前的同事已经将gpu安装完毕,但gpu的驱动和cuda版本都不符合tensorflow-gpu的要求,所以要先卸载掉gpu环境。同事安装的环境是:cuda driver 387,cuda8.0,cudnn6.0

注:TensorFlow-gpu需要cuda9.0,cudnn-7.0版本(本人测试7.1版本不行),并且安装最新的cuda驱动(至于为什么要装最新的,我也不知道)。

背景介绍差不多了,下面开始安装。

1.卸载环境

[root@hadoop1 ~]# pip show tensorflow-gpu
Name: tensorflow-gpu
Version: 1.4.0
Summary: TensorFlow helps the tensors flow
Home-page: https://www.tensorflow.org/
Author: Google Inc.
Author-email: opensource@google.com
License: Apache 2.0
Location: /usr/local/lib/python3.5/site-packages
Requires: tensorflow-tensorboard, enum34, wheel, protobuf, numpy, six

卸载TensorFlow-gpu
[root@hadoop1 ~]# pip3 uninstall tensorflow-gpu

卸载cuda8
[root@hadoop1 drive]# /usr/local/cuda-8.0/bin/uninstall_cuda_8.0.pl
卸载驱动
[root@hadoop1 drive]# /usr/bin/nvidia-uninstall

2.下载好相应的cuda驱动包,cuda包等:
NVIDIA-Linux-x86_64-390.67.run
下载链接在:https://www.nvidia.cn/Download/index.aspx?lang=cn

cuda_9.2.148_396.37_linux.run
下载链接在:
https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&target_distro=CentOS&target_version=7&target_type=runfilelocal

cudnn-9.0-linux-x64-v7.solitairetheme8
下载链接在:
https://developer.nvidia.com/rdp/cudnn-archive

3.安装NVIDI

[root@hadoop1 drive]# ./NVIDIA-Linux-x86_64-390.67.run

4.安装cuda9

[root@hadoop1 drive]# sh cuda_9.0.176_384.81_linux.run

在安装的时候会提示需不需要安装驱动,选no,因为上一步已经安装了。

安装完毕后配置环境变量:

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}}

5.安装cudnn9.0

[root@hadoop1 drive]# cp cudnn-9.0-linux-x64-v7.solitairetheme8 cudnn-9.0-linux-x64-v7.tgz
[root@hadoop1 drive]# tar -zxf cudnn-9.0-linux-x64-v7.tgz
[root@hadoop1 cuda]#  cp ./include/* /usr/local/cuda/include
[root@hadoop1 cuda]# cp ./lib64/* /usr/local/cuda/lib64
[root@hadoop1 cuda]# 
chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

笔者一开始装的是cudnn9.1,装完后看不出什么问题,后来运行一个cnn网络的时候,报了如下错误:

Check failed: 
stream->parent()->GetConvolveAlgorithms( conv_parameters.ShouldIncludeWinogradNonfusedAlgo(), &algorithms)

后来查了一些博客说是版本问题,就换回来了。

5.安装TensorFlow-gpu

[root@hadoop1 drive]# 
pip3 install tensorflow_gpu-1.5.0-cp35-cp35m-manylinux1_x86_64.whl

笔者是在离线的情况下装TensorFlow-gpu的,所以运行这一步的时候,会报缺少依赖的错误,这时候就需要我们自己去网上下载相应的依赖并安装后,之后才来执行这一句命令。

缺少的依赖有:

版本>=absl-py.0.1.6>=tensorflow-tensorboard.1.5.0;>=futures.¬3.1.1

读者可以自己去网上找,实在找不到的话可以私聊我。有其他问题也可以私聊我。


执行到这一步,TensorFlow-gpu就全部装好了。接下来就可以利用gpu来跑深度学习的代码了。

在装cuda的时候,是需要关闭nouveau和X服务的,但这里就不写出命令了,读者可以去看其他的博客,或者看下面的参考文献。

参考文献:

【解决】Ubuntu安装NVIDIA驱动(咨询NVIDIA工程师的解决方案)
https://blog.csdn.net/u012759136/article/details/53355781

你可能感兴趣的:(深度学习)