Tensorflow GPU与CPU的安装库之间的区别

Roh*_*ala 11 python tensorflow

最近,我想将我的python库移动到pendrive,以便在我的Workstation和Laptop之间切换时保持所有库不变.(也是这样,如果我更新一个,它也在其他更新)

为此,我在pendrive上安装了tensorflow-gpu版本(我的笔记本电脑没有GPU).一切正常,两台PC都没有问题(它检测并使用我的GPU没有问题)和笔记本电脑(它自动使用我的CPU).

这就是我的问题所在.a之间有什么区别

tensorflow-gpu 
Run Code Online (Sandbox Code Playgroud)

而且只是

tensorflow
Run Code Online (Sandbox Code Playgroud)

?(因为没有找到GPU,tensorflow-gpu会自动使用CPU版本.)

差异仅在于GPU支持吗?那为什么会有非GPU版本的tensorflow呢?

还有,这样做还好吗?或者我应该创建虚拟环境以保持CPU和GPU的单独安装?


编辑: 我能找到的最接近的答案是 如何在没有gpu的情况下使用gpu开发张量流

但它只指定在CPU平台上使用tensorflow-gpu是完全可以的,但它仍然没有回答我的第一个问题.答案可能已经过时,因为tensorflow不断发布新的更新.


编辑2: 我在GTX 1070的工作站上安装了tensorflow-gpu版本(因此安装成功).

另外我明白不同之处是pip install tensorflow-gpu需要安装CUDA的设备,但我的问题更多的是使用库,因为我tensorflow-gpu在笔记本电脑上使用该版本没有任何问题(没有GPU)并且我的所有脚本都没有运行任何错误.

(也从上面删除pip安装以避免混淆)


编辑3:

也没有tensorflow-gpu在没有GPU设置的系统上运行CUDA_VISIBLE_DEVICES=-1

Oz_*_*Ben 11

只是一个快速的(不必要的?)注意……从 TensorFlow2.0 开始,这些没有分开,您只需安装 tensorflow(因为如果您安装了适当的卡/CUDA,这包括 GPU 支持)。

  • @Ironkey我认为值得回答的唯一原因是OP的问题很可能有点过时了,因为现在安装不再有任何差异(因为当前流上现在只有一个版本)。我很感激,已经两年了,但是网上有很多关于 TensorFlow-GPU 的参考资料 (3认同)

bur*_*bit 8

注意事项:即使您的系统中没有GPU,也可以安装CUDA。

对于包装tensorflowtensorflow-gpu我希望这能消除混乱。是/否表示“ 执行该程序包时,程序包是否开箱即用 import tensorflow as tf ”?区别如下:

| Support for TensorFlow libraries | tensorflow | tenosorflow-gpu |
|----------------------------------|------------|-----------------|
| cpu-only                         |    yes     |       no        |
| gpu with cuda+cudnn installed    |    yes     |       yes       |
| gpu without cuda+cudnn installed |    yes     |       no        |
Run Code Online (Sandbox Code Playgroud)

编辑:确认nocpu-only系统上的答案gpu without cuda+cudnn installed(通过删除CUDA + CuDNN env变量)。


use*_*663 5

tensorflow-gpu需要 cuda/cudnn。tensorflow才不是。pip不会为您安装 cuda(conda会),因此pip install tensorflow-gpu在大多数没有 nvidia gpu 的系统上无法开箱即用。