【发布时间】:2020-12-04 20:56:44
【问题描述】:
我在 python 3.7.4 中与 Anaconda 一起安装了 tensorflow-gpu 2.2.0 版,但我的代码始终在 CPU 上运行,并且无法检测到我的 GPU。
physical_devices= tf.config.experimental.list_physical_devices('GPU')
print(len(physical_devices))
>>> 0
当我运行这个时:
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
我明白了:
[name: "/device:CPU:0"
device_type: "CPU"
memory_limit: 268435456
locality {
}
incarnation: 6159543114609950707
, name: "/device:XLA_CPU:0"
device_type: "XLA_CPU"
memory_limit: 17179869184
locality {
}
incarnation: 4043157374881641271
physical_device_desc: "device: XLA_CPU device"
, name: "/device:XLA_GPU:0"
device_type: "XLA_GPU"
memory_limit: 17179869184
locality {
}
incarnation: 1519736160969870434
physical_device_desc: "device: XLA_GPU device"
]
XLA_GPU:0 对应于在 CPU 上运行的集成显卡,因为我已经测试了在 下使用 tf.device('/GPU:0'): 运行我的代码,并且任务管理器仅显示CPU 使用率。
我检查了我的 NVIDIA 控制面板 -> 系统信息 -> 组件,在 3D 设置下,我将 NVCUDA64.dll 描述为 NVIDIA CUDA 11.0.208 驱动程序。
到目前为止,我还没有尝试重新安装 tensorflow-gpu,期待之前可能还有其他事情要做。
【问题讨论】:
-
我不确定,但可能是 tf 2.2 不支持您当前的 CUDA 版本。不过,我认为 CUDA 会向后兼容。
-
我降级到了10.1,得到了对应的cuDNN版本,但是还是不行。有什么想法吗?
标签: python-3.x tensorflow gpu