Win10安装TensorFlow GPU版本(Python)教

2019-02-10  本文已影响3人  HRain

1 确定能否安装GPU版本

  1. 检查自己的电脑是否有NVIDIA(英伟达)的显卡,以及自己的显卡版本是否支持,此外AMD的显卡是不支持的。检查请访问英伟达官网

    图1 TensorFlow官网对GPU/CPU版本的说明
  2. 参考TensorFlow官网对安装GPU版本的需求说明。

    关键词:CUDA9.0、cuDNN v7.0、CUDA计算力3.0以上的显卡。

2 安装CUDA9.0

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

  1. 安装CUDA之前,需要安装Visual Studio的某个版本,因为没有这个的话,无法安装CUDA。本教程使用的是VS2017,建议安装VS2015,这样可以跳过步骤4、6。

  2. CUDA官方说明:点击这里
    下载地址:点击这里(win10 local安装)
    安装向导:点击这里

  3. 运行下载的cuda_9.0.176_win10.exe会安装CUDA安装器,路径使用默认的即可,因为这只是CUDA安装器,安装完CUDA后会自动删除。进入CUDA安装器后,选择自定义安装,不做修改点击下一步,选择安装路径,我的路径是1、3是D:/CUDA/v9.0,2选择D:/CUDA/cuda samples。等待安装完成即可。

  4. 由于我使用的VS2017 15.8.5版本CUDA9.0不太支持,所以需要修改D:/CUDA/v9.0/include/crt/host_config.h(找你自己相应的安装路径),把 #if _MSC_VER < 1600 || _MSC_VER > 1911 改成#if _MSC_VER < 1600 || _MSC_VER > 1915,这样修改是为了支持15.8.5版本的VS2017,如果是VS2015可以不用修改。

  5. 进入下面这个路径(以我自己的为例),选择自己的VS对应的版本打开。我的是nbody_vs2017.sln

  6. 还是因为VS2017的缘故,需要安装VS2015工具集,下载地址:点击这里!下载下图所示的工具包,然后安装。

  7. 右键 nbody->属性->常规->Platform Toolset 选择如下图,点击应用->确定。


  8. 打开nbody.cpp,然后点击菜单栏 生成-> 生成解决方案,等待生成。

  9. 进入下面这个路径查看是否生成nbody.exe,双击应该可以正常运行。

  10. 最后打开命定行,输入:nvcc –V,输出如下图即安装CUDA9.0成功。

3 安装cuDNN v7.0

cuDNN是CUDA的库,易于写代码。下载需要先注册为英伟达开发者,按提示进行即可。

  1. 下载地址:点击这里

  2. 选择下面这个版本,其他版本不兼容。


  3. 解压后应该得到cudnn-9.0-windows10-x64-v7文件夹,进入到cuda目录,将里面的三个文件夹拷贝到你的CUDA安装路径即可,比如我的是D:\CUDA\v9.0。(注意安装CUDA时自定义了两个路径,1、3一个,2一个,拷到1、3对应的路径。)

  4. 检查环境变量。右键我的电脑,属性->高级->环境变量,查看CUDA_PATH是否是你的CUDA安装路径。

  5. 打开一个VS项目,右键项目(比如还是上文的nbody.sln)->属性 -> 链接(Linker) -> Input -> Additional Dependencies,添加cudnn.lib

4 安装TensorFlow

建议安装Anaconda,会简化很多工作。本教程是使用Anaconda安装。

  1. 首先创建python3.6的虚拟环境tensorflow,cmd输入:conda create -n tensorflow pip python=3.6
    删除环境:conda env remove -n tensorflow
    激活环境:activate tensorflow
    取消激活:deactivate

  2. 激活tensorflow环境后,下载GPU版本的tensorflow:
    pip install --ignore-installed --upgrade tensorflow-gpu

  3. 验证安装:
    在tensorflow环境中,输入python
    然后输入代码:

import tensorflow as tf

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

输出:Hello, TensorFlow!

5 恭喜完成!

欢迎进入深度学习的坑!

——————————————————————————————————————

(原创不易,所有内容纯手打,请点赞支持!谢谢!)

上一篇下一篇

猜你喜欢

热点阅读