GPU 版本训练,程序刚启动时,可能会出现下面的错误信息:
-
Could not create cudnn handle: CUDNN_STATUS_NOT_INITIALIZED
-
Failed to get convolution algorithm. This is probably because cuDNN failed to initialize.so try looking to see if a warning log message was printed above
解决方案:
- 首先请确保安装的 CUDA、Cudnn、Tensorflow-gou 版本一致兼容性,关于各版本对应需安装的版本情况,可以查看这篇博文:tensorflow各个版本的CUDA以及Cudnn版本对应关系;此处一个小建议:不要安装的 CUDA 版本太高,9.0、10.0的就可以,安装tensorflow-gpu是不要用conda 命令,要用 pip 命令,conda 安装的话会捆绑一个对应不兼容 CUDA版本
-
在安装版本没有问题的情况下,导致报错的原因就是内存不足的原因,可以在在代码开始部分加入几行控制 GPU 内存消耗的命令,如下;
参考链接: https://github.com/tensorflow/tensorflow/issues/28326