CUDNN_STATUS_NOT_INITIALIZED:为什么Python / PyCharm中的cuDNN如此挑剔?

时间:2020-02-26 12:27:03

标签: python tensorflow pycharm cudnn

每隔一段时间,我都会收到类似的错误

2020-02-26 14:17:31.605963:我tensorflow / stream_executor / platform / default / dso_loader.cc:42]成功打开了动态库libcublas.so.10.0 2020-02-26 14:17:31.829898:我tensorflow / stream_executor / platform / default / dso_loader.cc:42]成功打开了动态库libcudnn.so.7 2020-02-26 14:17:32.757316:E tensorflow / stream_executor / cuda / cuda_dnn.cc:329]无法创建cudnn句柄:CUDNN_STATUS_NOT_INITIALIZED 2020-02-26 14:17:32.757384:E tensorflow / stream_executor / cuda / cuda_dnn.cc:337]可能是驱动程序版本不足:440.33.1 2020-02-26 14:17:32.758265:E tensorflow / stream_executor / cuda / cuda_dnn.cc:329]无法创建cudnn句柄:CUDNN_STATUS_NOT_INITIALIZED 2020-02-26 14:17:32.758293:E tensorflow / stream_executor / cuda / cuda_dnn.cc:337]可能是驱动程序版本不足:440.33.1

回溯(最近通话最近): tensorflow.python.framework.errors_impl.UnknownError:找到2个根错误。 (0)未知:无法获得卷积算法。这可能是因为cuDNN无法初始化,所以请尝试查看上面是否打印了警告日志消息。 [[{{node conv2d / Conv2D}}]] (1)未知:无法获得卷积算法。这可能是因为cuDNN无法初始化,所以请尝试查看上面是否打印了警告日志消息。 [[{{node conv2d / Conv2D}}]] [[密集/ S形/ _285]]

然后我重新加载PyCharm或重新启动系统,一切按预期运行。然后它再次出现。可能是什么原因造成的?

1 个答案:

答案 0 :(得分:0)

CUDNN_STATUS_NOT_INITIALIZED,此问题是由incorrect GPU driver(驱动程序版本不足)或安装了wrong version of cuDNN的{​​{1}}引起的。

我重新加载PyCharm或重新启动系统,一切都以 预期。然后它再次出现。

是的,如果重新启动可以在短时间内解决问题,但还是会再次发生。

在不了解操作系统,Tensorflow GPU版本,CUDA和cuDNN详细信息的情况下,建议直接答案有点困难。但是,您可以参考下面的图片来获得经过官方测试的Windows和Linux / macOS的构建配置。

Windows: enter image description here

Linux: enter image description here

macOS: enter image description here

有关更多详细信息,请参阅LinuxWindows

由于需要安装新版本的GPU驱动程序,因此应删除旧的GPU驱动程序。

要重新安装GPU驱动程序:

  1. 下载所需的GPU驱动程序here
  2. 删除旧版本的GPU驱动程序: CUDA
  3. 重新启动主机
  4. 安装下载的GPU驱动程序
  5. 重新启动

对于cuDNN安装,请分别针对Windows,MAC OS X和Linux遵循here所述的说明。