Keras/TensorFlow 报错如下:
failed to alloc 2097152 bytes on host: CUDA_ERROR_OUT_OF_MEMORY
could not allocate pinned host memory of size:xxxxx
解决办法:
TensorFlow 默认贪婪的占用全部显存,所以有时候显存不够用,添加如下代码,让显存按需分配
import tensorflow as tf
import keras.backend.tensorflow_backend as KTF
config = tf.ConfigProto()
config.gpu_options.allow_growth=True #不全部占满显存, 按需分配
sess = tf.Session(config=config)
KTF.set_session(sess) # 设置session
问题解决,并且显存不会总被占满