1. 环境确认

要使用 GPU 版的 TesnorFlow 来加速我们的神经网络运算,首先要确保,我们的 GPU依 赖环境已经搭好。

1.1 查看 CUDA 版本

在终端输入命令:
cat /usr/local/cuda/version.txt 显示如下:
CUDA Version 9.0.176

1.2 查看 cudnn 版本

在终端输入命令:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2 显示如下:

#define CUDNN_MAJOR 7
#define CUDNN_MINOR 0
#define CUDNN_PATCHLEVEL 5
#define CUDNN_VERSION    (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)
#include "driver_types.h"

如果没有安装 cuda 和 cudnn,到官网根自己的 GPU 型号版本安装即可,cuda 和 cudnn 是使用 GPU 必装的依赖环境,在安装 TensorFlow 的 GPU 版本时,也必不可少。


2. 安装 Anaconda

在确保,cuda 和 cudnn 已经安装的条件下,我们来使用 Anaconda 安装 TensorFlow 的 GPU 版。

之所以建议通过 Anaconda 来安装 TensorFlow,是因为 Anaconda 集成了较多 python 第三方库,对我们后期的神经网络构建等是十分方便的。

首先进入 Anaconda 官方下载地址:anaconda 下载 选择 Linux 版本,根据自己安装的 python 版本来选择相应的安装包版本。

下载完成后,在下载目录下打开终端,执行命令进行安装:
bash Anaconda3-2018.12-Linux-x86_64.sh

指定安装路径到:/data/monn/usr/local/anaconda3

提示是否将 Anaconda3 添加至环境变量,输入 yes 安装完成后,输入 conda 验证是否安装成功。


3. 通过 Anaconda 安装 TensorFlow 的 GPU 版

在 Anaconda下创建虚拟环境来安装 TesnorFlow 的 GPU 版

创建虚拟环境

conda create -n tensorflow python=3.7.1 创建一个名叫”tensorflow"的虚拟环境

  • 系统会提示我们要安装一些新的依赖包,输入 y 即可

激活虚拟环境

source activate tensorflow 激活虚拟环境

安装 TensorFlow

pip install tensorflow-gpu -i https://pypi.doubanio.com/simple/ 从豆瓣镜像中下载速度比较快
pip install tensorflow-gpu 安装 TensorFlow 速度非常慢(不推荐)

测试 TensorFlow

python 进入 python环境后,输入命令:import tensorflow,观察是否报错。
果然报错:
ImportError: libcublas.so.10.0: cannot open shared object file: No such file or directory

原因:安装的 tensorflow 版本与 cuda 版本不匹配导致

前面看到这里的 cuda 版本是 9.0,而 tensorflow 1.6/1.5 和 cuda 9.0对应,1.4/1.3和 cuda 8.0 对应。

所以,先卸载掉高版本的 tensorflow-gpu-1.13.1:
pip uninstall tensorflow-gpu 卸载成功:
Successfully uninstalled tensorflow-gpu-1.13.1

安装 cuda 9.0 对应的 tensorflow 版本

之后再次尝试 import tensorflow ,问题解决。

再输入:

import tensorflow as tf
hello = tf.constant('Hello, TensorFlow! I am IT Xiao Ding Dang!')
sess = tf.Session()

可以看到系统列出了详细的信息,且 GPU 显卡 1080 已经启用,这时输入命令:sess.run(hello)

此时系统已经可以通过tensorflow-gpu为我们正常输出,这说明我们的tensorflow-gpu已成功安装。