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已成功安装。