【发布时间】:2018-12-20 04:01:05
【问题描述】:
我在 Ubuntu 16.04.4 的 conda 环境中安装了 tensorflow 和 tensorflow-gpu 1.8.0 conda(不是 pip)包:
conda list t.*flow
# packages in environment at /home/lebedov/miniconda3/envs/TF:
#
# Name Version Build Channel
_tflow_180_select 1.0 gpu
tensorflow 1.8.0 py36_1 conda-forge
tensorflow-gpu 1.8.0 h7b35bdc_0
我的系统上安装了 CUDA 9.0,它有一个 Quadro M2200 GPU。我可以看到在 nvidia-smi 的输出中列出的 GPU,也可以使用其他深度学习框架(例如 PyTorch 0.4.0)访问 GPU,但由于某种原因,TensorFlow 似乎没有看到它:
Python 3.6.5 | packaged by conda-forge | (default, Apr 6 2018, 13:39:56)
Type 'copyright', 'credits' or 'license' for more information
IPython 6.4.0 -- An enhanced Interactive Python. Type '?' for help.
In [1]: import tensorflow as tf
...: sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
2018-07-11 23:21:11.827064: I tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
Device mapping: no known devices.
2018-07-11 23:21:11.827942: I tensorflow/core/common_runtime/direct_session.cc:284] Device mapping:
但是,如果我降级到 tensorflow-gpu 1.7.0,我可以看到 GPU。关于为什么 TensorFlow 1.8.0 没有检测到 GPU 有什么想法吗?
【问题讨论】:
-
你已经安装了 CPU 和 GPU tensorflow?怎么可能?
-
这显然是 tensorflow 1.8.0 conda 包的结构;见github.com/AnacondaRecipes/tensorflow_recipes
-
为了限定我之前的评论,anaconda 和 conda-forge TensorFlow 包的结构显然不同,可能不一定能相处。请参阅我对这个问题的回答。
标签: tensorflow gpu