本文主要是参考https://www.leiphone.com/news/201711/GCh0IBszXrxP1iHU.html 并在其基础上细化说明,以及排雷。
重要声明:
安装GPU版本的TensorFlow最重要的就是各种软件之间版本匹配,并非最新的软件最好,太新太旧都不行。强烈建议走别人已经走过的版本搭配,如果使用自己搭配的版本,需要之前自行确定是否兼容。如果懒,那就严格走别人的路。
需要准备的软件安装包
64位 Windows 10+ Anaconda (Python 3.5 )+ Visual Studio 2015 + CUDA 9.2 + CuDnn 7.1.4 for CUDA 9.2+ TensorFlow 1.8.0+pycharm
STEP 1: Anaconda 下载安装
Anaconda 的下载地址。注意下载最新版本的Anaconda 然后要将python的版本搞成3.5.具体操作见下文。
选择符合电脑操作平台Anaconda 的版本下载后安装。一切按照默认安装除了下图,需要添加环境变量的路径,因此要打勾。
安装过程中出现要求安装VS,如下图,选择装就行。不装最后可能会出现报错: Conda 命令是不可执行的程序。
接下来打开Anaconda Prompt,输入
conda search python
出现报错,conda不是可执行的命令,原因可能有二:没有正确加入环境变量或者需要重启电脑、
检查环境变量的方法参照:检查修改环境变量。
如果conda命令可以正常使用,接下来就修改python版本为 3.5。
(1).创建一个名为py35的环境,指定Python版本是3.5
conda create --name py35 python=3.5
注意到路径“C:\Users\Yang\Anaconda3\envs”下,出现了名字为py35的文件夹,这表示环境创建成功,如下图:
其他几个文件夹是本人手抖,不知道什么时候创建的虚拟环境。所以之后在安装的时候,千万注意是在哪个虚拟环境中安装TensorFlow,事关TensorFlow导入pycharm的路径。
也可以使用下面命令,查看你一共有多少个虚拟的环境
conda info --envs
我想要的是py35的环境下安装TensorFlow,所以安装TensorFlow之前激活这个环境,如步骤(2)
(2).安装完成后,使用activate激活python35
conda activate py35
注意到电脑程序列表中出现了 prompt py35.之后的所有安装,尤其是TensorFlow的安装都可以在这个prompt下打开,这样就免去了每次先输入conda activate py35的麻烦。否则在默认的prompt---base下安葬TensorFlow 就先激活py35,具体操作见后文STEP 6.
STEP 2: 安装Visual Studio 2015
安装VS2015没什么难度,只有一个选项需要自定义,别的选项都可以使用默认值。VS2015的默认安装不包括C++的编译器,必须手动勾选Visual C++,如下图,不然会面临后续的CUDA编译错误。
STEP 3: 安装CUDA
双击我们下载的安装文件即可,一切都选择默认即可。
如果有补丁,先安装完之后再运行补丁程序。
STEP 4: 验证CUDA安装的正确性
4.1 打开prompt,输入
nvcc -V
如安装正确,即可得到类似下图的输出。输出中显示了CUDA的版本是release 9.2
4.2 进入“C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0”文件夹,双击打开 “Samples vs2015”这个文件。
选择编译生成1_Utilities中所有的文件。具体操作就是在1_Utilities上右键选择Build,注意红框部分的64位和Release:
这个时候,你可能遇到了编译错误,如果你发现错误提示是无法找到 CUDA.prop那么就是CUDA安装错误,建议检查CUDA版本重新安装。如果成功,则会看到5个文件编译成功,如下图:
在成功后,你会发现在“C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0\bin\win64\Release”文件夹中出现了一堆文件,我们主要需要deviceQuery和bandwidthTest。
4.3 打开 prompt ,运行
cd C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0\bin\win64\Release
然后依次运行
deviceQuery.exe
和
bandwidthTest.exe
关注上两行的输出结果是否是result = PASS即可。
STEP 5: 安装cudnn
cudnn 的下载地址。注意需要先注册会员。
解压缩我们下载的CuDnn文件,得到3个文件夹:bin, include, lib。如下图所示,将这个三个文件夹复制到“C:\ProgramData\NVIDIA GPU Computing Toolkit\v8.0”
打开系统环境变量设置,以Win10为例,请参考百度经验(http://t.cn/RYIJJht)介绍。
确认CUDA_PATH和CUDA_PATH_V9.2 已经存在,否则手动添加路径。
STEP 6: 安装TensorFlow
非常重要!!!!激活py35的环境
activate py35
安装TensorFlow GPU版本
conda install tensorflow-gpu
注意不要使用pip安装,否则最后TensorFlow GPU安装后也不能调用GPU,即下面语句是错的,不要入坑
pip install tensorflow==1.8.0 --ignore-installed
pip3 install tensorflow-gpu
STEP 7: 测试 TensorFlow-gpu 安装正确
测试程序:
import tensorflow as tf
a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')
c = tf.matmul(a, b)
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
print(sess.run(c))
正常情况会输出,即报出各种显卡的信息。
STEP 7: 安装pycharm
破解以及安装pycharm可以自行百度,安装完之后导入TensorFlow的方法:
7.1 file-->setting-->project interperter-->右上角点击齿轮-->show all-->加号添加-->选择conda环境-->导入路径“C:\Users\Yang\Anaconda3\envs\py35”选择python.exe-->确定即可。具体截图步骤如下: