当前位置: 首页>编程语言>正文

tensorflow不用gpu tensorflow一定要cuda吗

安装前准备

TensorFlow 有两个版本:CPU 版本和 GPU 版本。GPU 版本需要 CUDA 和 cuDNN 的支持,CPU 版本不需要。如果你要安装 GPU 版本,请先确认你的显卡支持 CUDA。我安装的是 GPU 版本,采用 pip 安装方式,所以就以 GPU 安装为例,CPU 版本只不过不需要安装 CUDA 和 cuDNN。(GUP版本速度较快)

  1. 在 这里 确认你的显卡支持 CUDA。
  2. 确保你的 Python 版本是 3.5 64 位及以上。(TensorFlow 从 1.2 开始支持 Python 3.6,之前的官方是不支持的)
  3. 确保你有稳定的网络连接。
  4. 确保你的 pip 版本 >= 8.1。用 

pip -V

  1.  查看当前 

pip

  1.  版本,用 

python -m pip install -U pip

  1.  升级

pip

此外,建议安装 Anaconda,因为这个集成了很多科学计算所必需的库,能够避免很多依赖问题,安装教程可以参考 这里。

以上条件符合,那么恭喜你可以开始下载 CUDA 和 cuDNN 的安装包了,注意版本号分别是 CUDA 8.0 和 cuDNN 6(由于 TensorFlow 不同版本有变化,5.1 已不再适用新版本,此处请结合 安装cuDNN 说明),这是 Google 官方推荐的。可以去各自官网下载,我已经下载好打成一个压缩包放到了百度云,大家可以从 这里 下载,密码 5aoc。


安装TensorFlow

由于Google那帮人已经把 TensorFlow 打成了一个 pip 安装包,所以现在可以用正常安装包的方式安装 TensorFlow 了,就是进入命令行执行下面这一条简单的语句:

# GPU版本
pip3 install --upgrade tensorflow-gpu

# CPU版本
pip3 install --upgrade tensorflow

然后就开始安装了,速度视网速而定。

import tensorflow


安装CUDA 8.0

这个也是很简单的,下载完我上面给的压缩包之后,解压,得到两个文件,那个 exe 文件就是 CUDA8 的安装程序,直接双击执行就可以了,就像安装正常的其他软件一样,安装过程屏幕可能会闪烁,不要紧,而且安装时间有点长。

安装完之后系统变量会自动为你添加上,这个不用管。

nvcc -V

tensorflow不用gpu tensorflow一定要cuda吗,tensorflow不用gpu tensorflow一定要cuda吗_tensorflow不用gpu,第1张


安装cuDNN

Google 于 2017 年 8 月 17 日左右发布了 TensorFlow 1.3,该版本不再支持 cuDNN 5,开始支持 cuDNN 6,并预计在 TensorFlow 1.4 支持 cuDNN 7,所以说当你使用 pip 安装最新版的时候,请使用 cuDNN 6,而不是我提供的 5.1,否则会出现 Issues #2 的问题。

TensorFlow 1.3 中关于 cuDNN 的 发行说明:

All our prebuilt binaries have been built with cuDNN 6. We anticipate releasing TensorFlow 1.4 with cuDNN 7.

TensorFlow 1.2 中关于 cuDNN 的 发行说明:

TensorFlow 1.2 may be the last time we build with cuDNN 5.1. Starting with TensorFlow 1.3, we will try to build all our prebuilt binaries with cuDNN 6.0. While we will try to keep our source code compatible with cuDNN 5.1, it will be best effort.


bin 目录路径添加到Pathcuda

tensorflow不用gpu tensorflow一定要cuda吗,tensorflow不用gpu tensorflow一定要cuda吗_CUDA_02,第2张

Path环境变量:

tensorflow不用gpu tensorflow一定要cuda吗,tensorflow不用gpu tensorflow一定要cuda吗_tensorflow_03,第3张

import tensorflow


测试

用一个简单的矩阵乘法测试一下,

import tensorflow as tf

a = tf.random_normal((100, 100))
b = tf.random_normal((100, 500))
c = tf.matmul(a, b)
sess = tf.InteractiveSession()
sess.run(c)

tensorflow不用gpu tensorflow一定要cuda吗,tensorflow不用gpu tensorflow一定要cuda吗_tensorflow不用gpu_04,第4张

 

看不清的话可以右键在新标签页打开图片查看大图

可以看到已经识别出我的显卡了(不要吐槽我的渣显卡,穷屌丝一个)。

终于可以在Windows上和TensorFlow愉快的玩耍了~~~


Issues

#1 Cannot remove entries from nonexistent file

Cannot remove entries from nonexistent file c:\users\li\anaconda3\lib\site-packages\easy-install.pth 的错误,那么可以参考 Cannot remove entries from nonexistent #622 和 osx 10.11 installation issues #135,里面说了好多种解决办法,我在这里介绍一种方法:在 pip3 install --upgrade tensorflow-gpu 之前先执行 pip install --upgrade --ignore-installed setuptools

#2 ImportError: DLL load failed: 找不到指定的模块。 和 ImportError: No module named '_pywrap_tensorflow_internal'


tensorflow不用gpu tensorflow一定要cuda吗,tensorflow不用gpu tensorflow一定要cuda吗_标签页_05,第5张

 

右键在新标签页打开图片查看大图

tensorflow不用gpu tensorflow一定要cuda吗,tensorflow不用gpu tensorflow一定要cuda吗_CUDA_06,第6张

 

右键在新标签页打开图片查看大图

tensorflow不用gpu tensorflow一定要cuda吗,tensorflow不用gpu tensorflow一定要cuda吗_tensorflow不用gpu_07,第7张

 

右键在新标签页打开图片查看大图 如果在 import tensorflow,那么很有可能是你的 cuda 和 cudnn 版本有问题,例如你的 cuda 版本是 8.0.60,而正确的是 8.0.44,重新安装正确的版本(文章里提供的)就可以。参考 On Windows, running “import tensorflow” generates No module named “_pywrap_tensorflow” error 。感谢 @qq_27690673 提供的信息。

#3 ImportError: No module named 'tensorflow.python.pywrap_tensorflow_internal'


tensorflow不用gpu tensorflow一定要cuda吗,tensorflow不用gpu tensorflow一定要cuda吗_tensorflow不用gpu_08,第8张

 

右键在新标签页打开图片查看大图import tensorflow


https://www.xamrdz.com/lan/5cn1934222.html

相关文章: