无法在仅 tensorflow CPU 安装上加载动态库“cudart64_101.dll”

新手上路,请多包涵

我刚刚通过 pip install tensorflow 安装了最新版本的Tensorflow,每当我运行程序时,我都会收到日志消息:

W tensorflow/stream_executor/platform/default/dso_loader.cc:55] 无法加载动态库 ‘cudart64_101.dll’; dlerror: 未找到 cudart64_101.dll

这很糟糕吗?如何修复错误?

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

阅读 616
2 个回答

张量流 2.1+

这是怎么回事?

新的 Tensorflow 2.1 版本 中,默认的 tensorflow pip 包包含 CPU 和 GPU 版本的 TF。在以前的 TF 版本中,找不到 CUDA 库会发出错误并引发异常,而现在库会动态搜索正确的 CUDA 版本,如果找不到,则会发出警告(开头的 W 代表对于警告,错误有一个 E (或 F 表示致命错误)并回退到仅 CPU 模式。事实上,这也在警告之后作为信息消息写在日志中(请注意,如果你有更高默认的最低日志级别,您可能看不到信息消息)。完整的日志是(强调我的):

2020-01-20 12:27:44.554767:W tensorflow/stream_executor/platform/default/dso_loader.cc:55] 无法加载动态库“cudart64_101.dll”; dlerror: 未找到 cudart64_101.dll

2020-01-20 12:27:44.554964: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] 如果您的机器上没有设置 GPU,请忽略上面的 cudart dlerror。

我应该担心吗?我如何解决它?

如果您的机器上没有支持 CUDA 的 GPU,或者如果您不关心没有 GPU 加速,则无需担心。另一方面,如果您安装了 tensorflow 并想要 GPU 加速,请检查您的 CUDA 安装(TF 2.1 需要 CUDA 10.1而不是 10.2 或 10.0)。

如果您只是想摆脱警告,您可以 调整 TF 的日志记录级别 以抑制警告,但这可能是矫枉过正,因为它会使 所有 警告静音。


TensorFlow 1.X 或 2.0:

您的 CUDA 设置已损坏,请确保您安装了正确的版本。

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

要在 TensorFlow 2.1 中安装 GPU 支持的先决条件:

  1. 安装最新的 GPU 驱动程序。
  2. 安装 CUDA 10.1
    • 如果 CUDA 安装程序报告“您正在安装较旧的驱动程序版本”,您可能希望选择自定义安装并取消选择某些组件。事实上,请注意,TensorFlow 不需要与 CUDA 捆绑在一起的软件,包括 GeForce Experience、PhysX、显示驱动程序和 Visual Studio 集成。
    • 另请注意,除非您从源代码构建,否则 TensorFlow 需要特定版本的 CUDA 工具包;对于 TensorFlow 2.1 和 2.2,当前版本为 10.1。
  3. 安装 cuDNN。
    1. 下载适用于 CUDA 10.1 的 cuDNN v7.6.4。这将要求您注册 NVIDIA 开发人员计划。
    2. 解压缩到合适的位置并将 bin 目录添加到您的 PATH。
  4. 通过 pip install tensorflow 安装 tensorflow。
  5. 可能需要重新启动 PC

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

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