代码环境 : tf1.14.0+ keras2.2.5
用Keras跑了MNIST代码之后,又跑其他程序总是容易显存不够用。从网上找到下面的方法,亲测可用。
方法
1 先安装numba库:pip install numba
2 使用如下代码即可
from numba import cuda
cuda.select_device(0)
cuda.close()
3注意下面的方法不好使。亲测不好使
from keras import backend as K
K.clear_session()
原因解释: Tensorflow只是为GPU分配内存,而CUDA负责管理GPU内存.如果在用K.clear_session()清除了所有图形后,CUDA以某种方式拒绝释放GPU内存,那么您可以使用cuda库直接控制CUDA以清除GPU内存.
参考:链接