【问题标题】:Tensorflow-gpu not detecting GPU?Tensorflow-gpu 没有检测到 GPU?
【发布时间】: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


【解决方案1】:

我自己的答案。终于成功了:

我必须下载 CUDA 10.1,然后为该版本下载 cuDNN 7.6.5。

感谢@Gerry P 和@Richard X

【讨论】:

  • 谢谢大家,我也遇到了同样的问题,安装 cuDNN 就可以了!
【解决方案2】:

我不相信 11.0 会与 tensorflow 一起使用。你需要10.1。我有一个 RTX2070,适用的驱动程序版本是 432.00。转到 NVIDIA 站点并尝试找到 10.1 兼容的驱动程序并安装它。如果你使用 CONDA 安装 tensorflow,那么它应该已经安装了 10.1 CUDA 工具包和兼容版本的 Cudnn。

【讨论】:

  • 我按照说明安装了 CUDA 10.1。然后我查找了该版本的相应 cuDNN 并按照安装说明进行操作,但这似乎也不起作用。
  • 我认为您需要将 GPU 卡驱动程序更改为与 10.1 兼容的驱动程序。
  • 你知道我应该安装什么卡驱动版本吗?我现在是451.67
  • 这取决于您拥有的 GPU 卡。我的是RTX2070,驱动版本是432.00
【解决方案3】:

我最近安装了 tensorflow 2.7,它运行良好。这是我的配置: CUDA:11.5,CUDNN:8.3,TENSORFLOW:2.7,PYTHON:3.9.9,GPU:NVIDIA GTX 1060,驱动版本:497.29

我没有使用Conda(虽然很方便但是会导致很多版本冲突)。我在 Windows 10 上手动安装了所有内容,如下所示。因此,如果有人在 2022 年 1 月或之后寻求说明:

  1. 安装 python b/w 3.90 - 3.9.9 (https://www.python.org/downloads/release/python-399/)
  2. 安装 cuda 工具包(检查与您的 GPU 的兼容性)(https://developer.nvidia.com/cuda-toolkit-archive)
  3. 安装 cudnn 并确保它与上面安装的 cuda 版本兼容 (https://developer.nvidia.com/rdp/cudnn-archive)

*注意:不要忘记按照上面链接中的说明安装 zlib (https://docs.nvidia.com/deeplearning/cudnn/install-guide/index.html#install-zlib-windows)

  1. 确保 cuda 和 cudnn 的 bin 在 PATH (C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.5\bin), (C:\Program Files\NVIDIA GPU Computing Toolkit\cudnn) -windows-x86_64-8.3.1.22_cuda11.5-archive\bin)
  2. 安装张量流 (https://www.tensorflow.org/install/gpu) python3+安装时使用pip3
  3. 如果您想创建 Jupyter 笔记本,请安装 jupyter "pip3 install jupyterlab" (https://jupyter.org/install)
  4. 最后,重启你的机器或至少重启 shell
  5. 从 python REPL 运行以下命令,你应该得到 1 个或更多
import tensorflow as tf 

print("Num GPUs Available: ", len(tf.config.list_physical_devices('GPU'))

【讨论】:

    猜你喜欢
    • 2023-03-19
    • 2017-09-15
    • 1970-01-01
    • 2018-05-31
    • 2020-12-10
    • 2020-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多