解决TF2.0: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize
在笔记本电脑上搭建的keras深度学习框架中引入卷积层时报错:Failed to get convolution algorithm. This is probably because cuDNN failed to initialize…花了一上午时间,最终解决……
版本信息:
python 3.6.10
CUDA 10.0.130
cuDNN 7.4.2
Tensorflow 2.0.0
Keras 2.3.0
Google+百度发现大家解决该问题有两种方式:
1.CUDA,cuDNN,Tensorflow版本不兼容。主要解决方法是Tensorflow版本太高,需要降版本。(此方法我觉得很麻烦,所以并未尝试)
2.GPU内存不足。需要在代码最前面加几行代码实现对GPU进行按需分配。(然而我尝试了加了各种代码,虽然大同小异,但其他人问题解决了,我的始终没有。)
最终解决办法: 将原有cuDNN 7.4.2版本更换为7.6.5
删掉CUDA bin,include,lib文件夹中原有cuDNN 7.4.2版本拷贝的文件,再将cuDNN 7.6.5版本文件拷贝到相应文件夹中。此时可直接运行Keras和Tensorflow框架中的代码,没有报错。