使用卷积网络进行手写数字识别,在TensorFlow-gpu 1.15.0遇到的问题,报错信息太多就没有认真去看,直接去粘下来去百度了。再试了各种方法,只有加入
import os
os.environ["CUDA_VISIBLE_DEVICES"] = "gpu:0"
才能使代码跑起来。
但是看任务管理器的性能图发现CPU利用率贼高,gpu基本就没动,而且运行效率也很慢。
后来仔细看了一眼报错信息:
tensorflow.python.framework.errors_impl.UnknownError: 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.
翻译:已加载运行时CuDNN库:7.4.2,但源代码是用:7.6.0编译的。如果是CuDNN 7.0或更高版本,则CuDNN库的主要版本和次要版本需要匹配或具有更高的次要版本。如果使用二进制安装,请升级CuDNN库。如果从源代码生成,请确保运行时加载的库与编译配置期间指定的版本兼容。
发现网上给出的是TensorFlow-gpu 1.15.0+cuda10.0+cudnn7.4。然而想运行构建卷积神经网络需要cudnn7.6。
如果和我遇到的情况一样不妨试一下,顺便把cudnn官网链接挂上:
cuDNN Archive | NVIDIA Developerhttps://developer.nvidia.com/rdp/cudnn-archive