Tensorflow GPU 无法加载动态库“cusolver64_10.dll”; dlerror:找不到 cusolver64_10.dll

新手上路,请多包涵

当我跑

import tensorflow as tf
tf.test.is_gpu_available(
    cuda_only=False, min_cuda_compute_capability=None
)

我收到以下错误

在此处输入图像描述

原文由 Haseeb 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.2k
2 个回答

第1步

 Move to C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin

第2步

Rename file cusolver64_11.dll  To  cusolver64_10.dll

在此处输入图像描述

  cusolver64_10.dll

在此处输入图像描述

原文由 Haseeb 发布,翻译遵循 CC BY-SA 4.0 许可协议

TL;DR For TensorFlow ver >= 2.4.0 on Windows , install exactly those versions of CUDA Toolkit and cuDNN highlighted below ie those列在官方要求中。(v11.0 相对于 v11.2)


Windows 上, TensorFlow ^ 撰写 本文 时的安装要求如此处所述

  1. NVIDIA® GPU 驱动程序 —CUDA® 11.0 需要 450.x 或更高版本。

  2. CUDA® 工具包—TensorFlow 支持 CUDA® 11 (TensorFlow >= 2.4.0)

  3. CUPTI 附带 CUDA® 工具包。

  4. cuDNN SDK 8.0.4

  5. (可选)TensorRT 6.0 可改善某些模型推理的延迟和吞吐量。

您面临的问题可能与 CUDA® 工具包的版本有关。 Tensorflow 对依赖项的版本很挑剔。看看里面 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin **。您应该能够找到 TensorFlow 所需的大部分 ^^ dll。您可能会注意到它包含 cusolver64_11.dll 而不是预期的 cusolver64_10.dll 如输出中所述。

尽管上面的答案中提到的重命名 hack 有效,但不能保证始终可靠地工作。简单而正确的解决方案是首先安装正确的依赖项。

在编写 CUDA ToolkitcuDNN 的兼容版本时

CUDA Toolkit 11.0 (May 2020)
cuDNN v8.0.4 (September 28th, 2020), for CUDA 11.0

从两者的大量可用版本中,列出 在这里这里

尚不支持更新的版本(我从 v11.0 开始测试)。我记得几年前在使用早期版本的 TensorFlow 时遇到过同样的问题。


^ 对于 ver >1.15, TensorFlow 默认包含 GPU 支持,因此需要 CUDA。当不可用时, TensorFlow 工作正常 - 它只是恢复到 CPU 执行。

\*\* 或者你安装工具包的地方

^^ cudnn64_8.dll 附带 cuDNN SDK

原文由 lineage 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题