Win10系统安装tensorflow-gpu(按照步骤一次成功)

目录

【前言】

【安装过程】

1 查看是否支持GPU 

 2 安装CUDA9.0

3  安装cuDNN

4 安装tensorflow-gpu

5 将tensorflow-gpu环境导入到Pycharm中

6 测试程序

【补充】


【前言】

1.tensorflow-gpu版本的安装相对来说复杂一些,因为需要考虑版本匹配的一些问题,很容易出问题,不过和前面安装cpu版本的过程基本一致, 我用了几个小时的时间最终安装成功,下面和大家分享一下我的安装过程。

2.安装环境

操作系统:64位win10

GPU:GTX1050+CUDA9.0+cuDNN7.6.5

IDE:Anaconda、Pycharm

框架和解释器:tensorflow-1.5.0-cp36-cp36m-win_amd64 + python3.6


【安装过程】

1 查看是否支持GPU 

1.1 依次打开“控制面板-硬件和声音-NVIDIA控制面板”,然后点左下角的“系统信息”,查看GPU型号,如下图:

AMD的显卡是不支持的,检查显卡的计算能力请访问英伟达官网 。

1.2 参考TensorFlow官网对安装GPU版本的需求说明,需要CUDA、cuDNN和英伟达GPU计算能力大于3的显卡。

还可以查看GPU和软件的版本对应关系,好多人在这里踩了一个大坑,如图:

 2 安装CUDA9.0

CUDA是基于C语言的可以让代码直接在GPU中运行的控制语言,所以第一步需要安装CUDA9.0,内含NVIDIA驱动程序(自定义安装时可以选择是否安装驱动)。

好多人在这里纠结该安装哪个版本,其实不用太纠结,根据上面的匹配表选择你想安装的版本即可。我的显卡驱动是9.2的,但是为了匹配tensorflow版本,安装了个CUDA9.0的,二者不冲突,而且安装后能够在控制面板里看到。 

2.1 CUDA官方说明(感兴趣可看一下)

下载地址:点击这里(win10 local安装)

 

 选择合适的版本下载,右面的是下载下来进行安装,选这个即可,把下面的几个需要下载的文件都下载下来,是exe可执行文件,如果发现不是可执行文件,注意核查下载好的文件名,修改成“.exe ”。

2.2 安装CUDA

几个文件下载好之后挨个点击进行安装即可,会先检查系统兼容性,然后选择安装方式。程序默认的精简模式应该可以理解为安装所有东西,其中包括了我暂时不用的VS编译器和显卡驱动,所以我选择的是自定义模式。

 接下来是选择安装路径。在其他博文中看到有的人更改安装路径会出现一些问题,不能安装完全,我没试,直接按照默认路径进行安装的,这样也便于下面配置环境变量,一路Next 直到完成即可。

其他的几个patch直接运行安装即可。

2.3 配置环境变量

安装成功后在系统的环境变量中会自动添加两个变量,如图:

但是这还不够,我们还需要再添加几个系统变量(根据实际安装版本和路径添加,一样版本和默认路径的可直接复制粘贴):

CUDA_SDK_PATH = C:\ProgramData\NVIDIA Corporation\CUDA Samples\v9.0

CUDA_LIB_PATH = %CUDA_PATH%\lib\x64 

CUDA_BIN_PATH = %CUDA_PATH%\bin 

CUDA_SDK_BIN_PATH = %CUDA_SDK_PATH%\bin\win64 

CUDA_SDK_LIB_PATH = %CUDA_SDK_PATH%\common\lib\x64

添加完之后的样子,如图:

下一步在系统变量Path里添加变量,双击Path添加如下变量(同样根据实际路径填):

%CUDA_LIB_PATH%

%CUDA_BIN_PATH%

%CUDA_SDK_LIB_PATH%

%CUDA_SDK_BIN_PATH%

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\lib\x64

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\bin 

C:\ProgramData\NVIDIA Corporation\CUDA Samples\v9.0\common\lib\x64

C:\ProgramData\NVIDIA Corporation\CUDA Samples\v9.0\bin\win64

2.4 检验是否安装成功

打开cmd命令窗口,切换路径(注意根据实际路径)

cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0\extras\demo_suite

分别运行以下命令

bandwidthTest.exe
deviceQuery.exe

若分别返回成功,则安装成功,如图:

3  安装cuDNN

cuDNN是CUDA的库,易于写代码。下载需要先注册为英伟达账号,直接用社交网络账号登陆就行,然后按提示进行即可。

3.1 下载地址:点击这里

注意和前面的表格里的版本要求相匹配,这里我下载的是7.6.4,如图

3.2 解压下载好的文件

解压后进入文件夹,按照下面的要求将文件放到相应的位置:

将.h .lib 和.dll 文件分别拷贝到cuda对应路径下的include, lib/x64, bin 文件夹下,对应关系如下图,下面是解压的文件夹:

到这里就安装好了CUDA9.0及其对应的cudnn文件,艰难的路程已经基本走完。

4 安装tensorflow-gpu

之前使用Anoconda安装了cpu版本的tensorflow,这里还借助Anaconda进行安装,会大大简化安装工作,条理清楚。Anaconda的安装很简单,可以参考这篇博文:点击这里

4.1 创建环境

打开Anaconda Prompt

在命令窗口输入命令创建环境

conda create -n tf-gpu python=3.6

其他三个常用命令

#删除环境:
conda env remove -n tensorflow
#激活环境:
activate tensorflow
#取消激活:
deactivate

4.2 下载安装tensorflow-gpu

激活tf-gpu环境,进行安装

activate tf-gpu

(1)方法一:在线安装,使用pip下载

 运行下面的命令下载并安装

pip install --ignore-installed --upgrade tensorflow-gpu

(2)方法二:离线安装(可以选择自己想要的版本,并且使用下载工具下载会更快)

 tensorflow-gpu下载地址:点击这里

下载的版本要和之前的表格对应适配,我下载的版本:tensorflow-1.5.0-cp36-cp36m-win_amd64.whl

下载好之后,在当前环境下切换到下载目录,使用以下命令进行安装

pip install tensorflow安装包名称

提示:如果还是提示需要更新pip的话按照提示进行更新再重新安装即可,更新:

python -m pip install --upgrade pip

至此,tensorflow已经安装完,可以使用python查看一下:

在当前环境下运行python:

python

然后打印tensorflow的版本

import tensorflow as tf
tf.__version__

然后会打印出如下结果


5 将tensorflow-gpu环境导入到Pycharm中

依次点击File-settings

然后按照下图,打开Show All

按照下图顺序,将anaconda中envs里tf-gpu环境下的python添加 进去即可,可以使用Pycharm体验GPU的运算速度了。

6 测试程序

这里我运行了一个风格迁移的程序,使用CPU版本的tensorflow用时为二十多分钟,使用GPU版本跑同样的程序,只用了5分钟,速度确实喜人!

一开始运行过程中还出现了一些错误,无非是缺少了一些库啥的,按照提示安装上就可以了,其中有俩错误记录一下:

(1)AttributeError: module 'scipy.misc' has no attribute 'imread'报错问题

网上的解决办法都说没有安装PIL第三方库,库名现在为Pillow,推荐直接使用命令pip install Pillow进行安装。实际上我已经安装了,但还是继续报错AttributeError: module 'scipy.misc' has no attribute 'imread'。

最后发现是scipy的版本问题, 降级到scipy==1.2.1就可以完美解决了。

pip install scipy==1.2.1

(2)运行时出现 shed with exit code -1073740791 (0xC0000409) ,如图

有其他博主说的减小batchsize,但该方法未能解决;查到是显卡内存不足的问题,在程序中添加如下代码即可解决:

import os
os.environ["CUDA_VISIBLE_DEVICES"] = "-1"

如图


【补充】

这里可以查看CDA 版本和驱动的匹配关系:点击这里

 

评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值