禁止keras预分配GPU内存

时间:2023-02-11 13:57:12

keras使用theano或者tensorflow作为后端时,都会预分配GPU内存,即先占满当前GPU的所有内存,而你使用nvidia-smi显示的就是预分配的GPU内存,往往是满的。如果你不想要程序预分配内存,即需要多少内存就动态分配多少内存时,你就需要如下设置:

import tensorflow as tf
import keras.backend.tensorflow_backend as K

config = tf.ConfigProto()
config.gpu_options.allow_growth=True
sess = tf.Session(config=config)
K.set_session(sess)


Ref
https://adriannunez.github.io/hardware-use/