在Windows 7/10系统下如何安装TensorFlow GPU版

版权声明:本文为博主原创文章,如需转载请注明出处。因博主水平有限,如有疏忽遗漏,敬请指出。 https://blog.csdn.net/ShadowN1ght/article/details/77931791

本文主要参考TensorFlow官网文章《Installing TensorFlow on Windows》(传送门:https://www.tensorflow.org/install/install_windows)。


目前,网上很多人不建议在Win系统下安装TensorFlow,因为支持不好。大部分用户都是将TensorFlow安装在Linux系统。但是,对于习惯在Win下进行软件开发的用户(特别是使用Visual Studio的用户),在win7和win10下搭建TensorFlow开发环境是一个迫切的需求。

我也一直想要实现Windows系统下调用TensorFlow代码,以避免需要安装Win/Linux双系统的麻烦。经过各种尝试,我终于在win7和win10两个系统下成功搭建TensorFlow开发环境,可以正常运行TensorFlow案例代码。本着分享的精神,现撰写本文,记录搭建步骤,以方便读者。

首先,为了能够正常访问TensorFlow资源,你可能需要cross the wall。作为程序员的你,肯定知道怎么cross。

然后,如果你想跟我一样安装gpu版,就得先确认你的显卡是否支持cuda 3.0以上版本。我测试的两台笔记本显卡分别是GT940m和GTX1050,都是完美支持的。如果你的显卡不是N卡,或者版本太旧,不支持cuda3.0以上版本,那么你只能安装cpu版。TensorFlow cpu版的windows搭建步骤也可以参照本文进行操作。

以上两点满足后,访问https://developer.nvidia.com/cuda-downloads,下载安装和你的系统相对应的cuda版本。(我下载的版本是cuda_8.0.61_windows.exe)

cuda安装完成后,把cuda dll文件路径C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin加入到系统变量path。然后百度搜索下载“cudnn64_5.dll”,把该dll文件拷贝到C:\Program Files\NVIDIA GPUComputing Toolkit\CUDA\v8.0\bin目录下。如果你找不到该版本dll的下载源,可以私信我,我会发给你的。

然后,访问 https://www.python.org/downloads/release/python-352/,下载python3.52(在下载页面选Windows x86-64 executable installer),然后安装,安装过程中记得所有选项都勾上,以免后续操作缺少相关依赖,如下图所示。


python安装好后,在win7/10下打开命令行窗口(cmd),输入如下命令,下载安装tensorflowgpu版:

pip3 install --upgrade https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-1.0.1-cp35-cp35m-win_amd64.whl

如果要下载cpu版,则命令如下:

pip3 install --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.0.1-cp35-cp35m-win_amd64.whl

(注:不要用pip3 install --upgrade tensorflow-gpu,这个命令会下载最新版tensorflow,新版的tensorflow所要求的cudnn dll不容易获取)

tensorflow安装完成后,请下载安装visual c++ 2015 redistributable,并确保你的系统中有msvcp140.dll文件,如果没有,请出门右转百度,如果找不到,私信我发给你。

完成上述准备后,在cmd窗口中输入python,然后执行以下代码:

import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))

如果一切正常,上述代码执行后cmd窗口会显示你的显卡型号,并打印“b' Hello,TensorFlow!'”。这表示TensorFlow在你的windows系统中安装成功。现在,你可以在你熟悉的系统和IDE环境中畅游机器学习的海洋。

如果提示“failed call to cuInit:CUDA_ERROR_NO_DEVICE”,则很有可能是你下载的cuda版本和你系统原有的Nvidia显卡驱动版本不兼容所导致。这个时候,你可以下载驱动精灵,卸载显卡驱动,如果原驱动太新,则重新下载一个旧一点的版本,如果原驱动太旧,则重新下载一个较新的版本(我下的版本是381.65)。总之,太新和太旧的驱动都可能会存在和cuda版本不兼容的情况,而太新和太旧之间的其它版本就可以解决这个问题。合适的才是最好的,你懂的。

猜你喜欢

转载自blog.csdn.net/ShadowN1ght/article/details/77931791