使用tensorflow搭建神经网络,含有卷积网络时,运行提示错误:
tensorflow.python.framework.errors_impl.UnknownError: Failed to get convolution algorithm. This is probably because cuDNN failed to initialize
经过在网上查找解决办法,此问题是由于tensorflow进行卷积计算时,会默认使用所有剩余GPU内存,导致的错误,添加GPU内存使用代码如下:
1、规定gpu使用率
config = tf.compat.v1.ConfigProto(allow_soft_placement=True)
config.gpu_options.per_process_gpu_memory_fraction = 0.7
tf.compat.v1.keras.backend.set_session(tf.compat.v1.Session(config=config))
2、规定gpu使用率按需增长
config = tf.compat.v1.ConfigProto(allow_soft_placement=True)
config.gpu_options.allow_growth = True
tf.compat.v1.keras.backend.set_session(tf.compat.v1.Session(config=config))
目前此方法解决了该问题,如大家有深入的见解望不吝赐教。