在keras和tensorflow中为不同用户共享GPU内存

Raj*_*esh 4 gpu keras tensorflow theano-cuda

我们只有一个装有CUDA驱动程序的GPU,每当一个用户运行代码时,整个内存就会分配给该用户。并且其他用户无法使用GPU。有办法摆脱这种行为吗?

vin*_*zee 6

如果您使用keras,请在脚本的开头添加以下内容:

from keras import backend as K

config = tf.ConfigProto()
config.gpu_options.allow_growth=True
sess = tf.Session(config=config)
K.set_session(sess)
Run Code Online (Sandbox Code Playgroud)

这将避免tensorflow采取所有内存可以看出这里

如果使用的是tensorflow没有keras,补充一点:

config = tf.ConfigProto()
config.gpu_options.allow_growth = True
session = tf.Session(config=config, ...)
Run Code Online (Sandbox Code Playgroud)

如图所示这里