在模型执行后清除Tensorflow GPU内存

8 浏览
0 Comments

在模型执行后清除Tensorflow GPU内存

我已经训练了3个模型,现在正在运行代码,按顺序加载每个模型的检查点并进行预测。我正在使用GPU。

当加载第一个模型时,它会预先分配整个GPU内存(这是我希望用于处理第一批数据的)。但是当它完成后,它不会释放内存。当加载第二个模型时,即使使用了tf.reset_default_graph()with tf.Graph().as_default(),GPU内存仍然完全被第一个模型占用,导致第二个模型无法获得足够的内存。

除了使用Python子进程或多进程来解决这个问题(这是我通过谷歌搜索找到的唯一解决方案)之外,是否还有其他方法可以解决这个问题?

0