首页 > 解决方案 > 无法在仅 tensorflow CPU 安装上加载动态库“cudart64_101.dll”

问题描述

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

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

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

标签: pythonpython-3.xtensorflowkerastensorflow2.0

解决方案


张量流 2.1+

这是怎么回事?

新的 Tensorflow 2.1 版本中,默认的tensorflowpip 包包含 TF 的 CPU 和 GPU 版本。在以前的 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 设置已损坏,请确保您安装了正确的版本。


推荐阅读