如何在具有2.0功能的GPU上运行tensorflow?

mic*_*kkk 32 cuda nvidia tensorflow cudnn

我已经在Linux Ubuntu 16.04上成功安装了tensorflow(GPU)并进行了一些小改动,以使其与新的Ubuntu LTS版本一起使用.

但是,我想(谁知道为什么)我的GPU满足了计算能力大于3.5的最低要求.事实并非如此,因为我的GeForce 820M只有2.1.有没有办法让tensorflow GPU版本与我的GPU一起工作?

我问的是这个问题,因为显然没有办法让在iOS上使用数字流GPU版本,但通过搜索互联网,我发现事实并非如此,事实上,如果不是因为这个不满足的要求,我几乎可以工作.现在我想知道GPU计算能力的这个问题是否也可以修复.

Rob*_*lla 25

tensorflow的GPU版本需要3.0或更高的计算能力(并使用cuDNN)来访问GPU.从这里开始

TensorFlow GPU支持需要具有NVidia Compute Capability> = 3.0的GPU卡.

cuDNN 还需要cc3.0或更高版本的GPU:

使用Pascal,Kepler,Maxwell,Tegra K1或Tegra X1 GPU的Windows,Linux和MacOS系统支持cuDNN.

  • 开普勒= cc3.x
  • Maxwell = cc5.x
  • Pascal = cc6.x
  • TK1 = cc3.2
  • TX1 = cc5.3

cuDNN不支持Fermi GPU(cc2.0,cc2.1).

cuDNN也不支持较旧的GPU(例如计算能力1.x).

请注意,从来没有一个版本的cuDNN或任何版本的TF正式支持NVIDIA GPU低于cc3.0.cuDNN的初始版本最初是通过要求cc3.0 GPU开始的,TF的初始版本是通过要求cc3.0 GPU开始的.

  • cuDNN无法在cc2.1 GPU上运行。也许mxnet具有启用gpu的路径,而无需cuDNN。[此处](http://mxnet.readthedocs.io/en/latest/how_to/build.html)似乎是这种情况。请注意,声称对cc2.0及更高版本的GPU支持,但它使用“ CUDNN来**加速** GPU计算”。 (2认同)

Tin*_*Luu 9

2017年9月更新:没有问题和痛苦,没办法做到这一点.我一直在努力尝试,甚至应用下面的技巧来强制它运行,但最后我不得不放弃.如果你认真对待Tensorflow,那么请继续购买3.0计算能力的GPU.

这是强制在2.0计算能力GPU(非正式)上运行张量流的技巧:

  1. 在Lib/site-packages/tensorflow/python/_pywrap_tensorflow_internal.pyd(orLib/site-packages/tensorflow/python/_pywrap_tensorflow.pyd)中找到该文件
  2. 用Notepad ++或类似的东西打开它

  3. 搜索3\.5.*5\.2使用正则表达式的第一次出现

  4. 您在3.5*5.2之前看到3.0,将其更改为2.0

我改变了如上所述,可以用GPU进行简单的计算,但在尝试实际项目时遇到奇怪和未知的问题(这些项目运行良好的3.0计算能力GPU)

  • 我强烈建议不要这样做.在使用GeForce 800M的笔记本电脑上使用此技巧后,结果不正确. (9认同)
  • 是的,发现这一点很难过.我发现我的GPU在复杂模型(奇怪的错误)下运行不正常,而使用相同的模型(相同的代码),它可以使用GPU 3.0顺利运行 (2认同)
  • 感谢各位回复上述实验中的问题.它帮助我简单地让它去了解我必须得到一个新的GPU,如果我想运行TF.:) @TinLuu,请考虑编辑您的答案以反映问题,以便其他可能会跳过这些评论的人也不会这样做! (2认同)