折腾了一天多,终于配置成功了orz
本篇文章是2018年11月2日写的,Win10,显卡为960M
下载版本为:(请注意兼容性)
Anaconda3 5.3.0
TensorFlow-gpu 1.9.0
CUDA9.0
cudnn7.1.4
0、检测自己的显卡能否安装gpu版本
1.右键“我的电脑”-属性-设备管理器-显示适配器,里面有显卡型号(我的是GeForce GTX 960M)
2.点击https://developer.nvidia.com/cuda-gpus,在里面查找自己的显卡型号(比如我的显卡在GeForce这一栏下找到了)
3.如果没有的话就无法使用tensorflow-gpu了
一、下载Anaconda3
1.点击下面的清华镜像链接,选择需要的版本下载(我下载的是截至2018.11.2最新的5.3.0 x86-64版本)
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
下载完的文件如下图所示:
2.双击下载完的文件,点击Next-I Agree,进入下面的页面
选择Just Me,点击Next,进入下面页面,自己选择安装路径(安装位置必须为空文件夹),再点击Next
进入下面页面,两个都打勾,不用管红字,点击Install安装。
安装完成后,在开始栏中应该有下列快捷方式:
二、下载CUDA9.0
CUDA下载地址
点击上述网站,找到9.0版本,点击“CUDA Toolkit 9.0”
依次选择 Windows、X86_64、10、exe[local]
点击下载第一个:
第一个下载文件Base Installer如下,双击进入:
选择路径,点击OK:
之后一路点击下一步就好。
验证是否安装成功:
点击打开Anaconda Prompt(开始栏里有快捷方式)
输入以下代码并回车(注意第二个V是大写的),查看CUDA的版本:
nvcc -V
出现以下界面,最后一行可以看到是9.0版本:
附上自己的环境变量(应该是下载过程中自动添加的):
Path中:
三、下载cuDNN7.1.4
点击https://developer.nvidia.com/cudnn,选择Download cuDNN
然后会需要注册登录,用qq邮箱注册就好,登录后在下面的小框里打勾,并点击“Archived cuDNN Releases”
找到需要下载的版本,点击,v7.1.4 for CUDA 9.0(刚刚下载过了CUDA9.0)
选择for Windows10,点击下载
下载完了之后解压:
点击cudnn-9.0-windows10-x64-v7.1\cuda\进入如下界面,把前三个文件复制:
然后打开刚刚下载的CUDA9.0的下载位置(实在找不到就在电脑里搜索“CUDA”或者“v9.0”这些关键词吧):
(本人在C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0)
直接粘贴到下面这里:
四、下载tensorflow-gpu1.9.0
点击“Anaconda Prompt”,进入下面页面
输入以下代码,之后敲回车,意为创建一个名字为“tensorflow-gpu”的虚拟环境,这个环境使用的python版本为3.6
conda create -n tensorflow-gpu python=3.6
出现以下界面,输入“y”敲回车:
然后出现以下界面,证明创建虚拟环境成功:
然后输入以下代码,敲回车,激活刚刚创建的名为“tensorflow-gpu”的环境:
activate tensorflow-gpu
输入以下代码,敲回车,升级pip到最新版本:
python -m pip install --upgrade pip
然后输入以下代码,敲回车,下载tensorflow-gpu 1.9.0,然后静静等待其下载完成。
pip install tensorflow-gpu==1.9.0
五、尝试用gpu加速测试代码
在刚刚下载完gpu的Anaconda Prompt界面里输入python并回车:
接着输入以下代码(直接复制粘贴回车就好):
import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))
出现以下界面:可以看到我的GPU设备号为0,名字为960M,运算能力为5.0
再输入一段测试代码(同样复制粘贴回车),用tf.matmul实现a和b两个矩阵相乘,输出结果矩阵c:
#Creates a graph.
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)
#Creates a session with log_device_placement set to True.
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
#Runs the op.
print (sess.run(c)) #python3.6版本一些书写规则有变化
可以看到最后输出了结果:
【11.2后记】
1.还是要说的是,关于CUDA和cuDNN,我反复下载卸载了多遍(因为版本不对)
甚至连Anaconda安装时也报错过(因为提前装过java),快捷方式突然消失过(于是我又卸载重装了一次)
我也像其他教程那样下载了显卡驱动(好像没有什么用因为会被覆盖)
但没像其他教程那样下载VS(已经有2017了啊为啥还要我装2015?而且装完有啥用啊)
环境变量加了又删(请告诉我为什么每个教程都不同)
所以从最开始到现在运行成功,其实都是玄学
希望大家都能安装成功
因为gpu加速起来真的很爽
2.参考的博客太多太多了,只列出现在还记得的几个:
Tensorflow-gpu安装
win10+Tensorflow+GPU详细的安装过程
Win10下Tensorflow(GPU版)安装趟坑实录
Win10 64 位Tensorflow-gpu安装(VS2017+CUDA9.2+cuDNN7.1.4+python3.6.5)
照例感谢以上大神orz。