0%

Windows 安装 tensorflow-gpu

准备工作

下面列出了笔者测试成功的环境,使用其它的版本可能出现不可预料的情况。

硬件

  • 图形卡
    根据 Tensorflow 官网上对于 GPU 支持的描述,需要 CUDA® 计算能力为 3.5 或更高的 NVIDIA® GPU 卡。大部分主流 N 卡都能满足这一点,如果不确定的话,可以在官网上查看:CUDA GPUs。笔者使用了一块 NVIDIA GeForce RTX 2070 进行测试。

  • 其它
    其它硬件达到主流配置即可。

软件

  • Windows 系统
    由于 macOS Mojave 的 N 卡驱动迟迟没有更新(据说是苹果已经抛弃了 N 卡,未来很有可能不会再更新驱动);并且 Tensorflow 官方已经不再推出适配 macOS 的 tensorflow-gpu 了,需要自己编译;因而使用 Windows 或者 Linux 系统会是更好的选择。笔者使用的是 Windows 10。

  • 显卡驱动程序
    在连接到网络时,Windows 10 会自动下载安装显卡驱动,但可能不是最新版本。建议通过 GeForce Experience 管理驱动程序。

  • CUDA
    tensorflow-gpu 依赖于 CUDA,需要到 NVIDIA 官网上的 CUDA Zone 下载。下载时选择 10.0 版本即可,因为最新的版本可能不被 tensorflow 所支持。历史版本可以在这里查看:CUDA Toolkit Archive

  • cuDNN
    cuDNN 的全称为 NVIDIA CUDA® Deep Neural Network library,是 NVIDIA 专门针对深度神经网络(Deep Neural Networks)中的基础操作而设计基于 GPU 的加速库。这也是一个重要依赖,需要准备好。其主页是 NVIDIA cuDNN,下载需要注册账号,不过也可以选择微信快捷登陆。同样需要注意的是,要正确选择与 CUDA 对应的 cuDNN 版本。本文发布时,与 CUDA 10.0 兼容的最新版本 cuDNN 为 v7.6.0。

  • Python
    笔者使用的是 Python 3.7.0。安装好之后确保能够通过 PowerShell 执行 pythonpip 即可。

  • tensorflow-gpu
    安装 tensorflow-gpu 的方法也有很多,例如 Anaconda 或者 pip。如果不想折腾环境,直接从这里找一个 wheel 就行了:tensorflow-gpu · PyPI。需要根据自己的系统和 Python 版本选择,例如 tensorflow_gpu-1.13.1-cp37-cp37m-win_amd64.whl

安装

安装 CUDA

安装过程并不复杂。运行从 NVIDIA 官网上下载的 CUDA 安装程序,将其安装在默认目录下即可。如果一切正常,相关组件会出现在 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0 目录下。

安装 cuDNN

解压 cuDNN 的安装包,会得到一个文件夹,将其打开后,可以看到名为 binincludelib 的子目录。而在前面所说的 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0 目录下也有这样几个子目录。因此,直接将 cuDNN 的相关文件复制合并进对应的目录即可。

安装 tensorflow-gpu

以 PowerShell 为例,将 CUDA 相关组件添加至环境变量:

1
$Env:path=$Env:Path+";C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\extras\CUPTI\libx64;"

完成后,cd 进入下载的 whl 文件所在目录,使用 pip 安装即可

1
pip install tensorflow_gpu-1.13.1-cp37-cp37m-win_amd64.whl

pip 会自动下载所需的依赖。

运行

如果一切顺利,打开 Python,执行

1
2
3
4
import tensorflow as tf
hello = tf.constant("Hello, TensorFlow!")
sess = tf.Session()
print(sess.run(hello))

不报错的话,就安装成功了。

🍭支持一根棒棒糖!
张书樵 微信

微信

张书樵 支付宝

支付宝