当Apache mod_wsgi django调用keras模型时,如何释放占用的GPU内存?
我的服务器配置如下:当Apache mod_wsgi django调用keras模型时,如何释放占用的GPU内存?,django,apache,memory,keras,Django,Apache,Memory,Keras,我的服务器配置如下: Apache2.4.23. Mod_wsgi 4.5.9 通过使用Django框架和apache服务器,我们称之为Keras深度学习模型成功调用模型后,模型始终在GPU内存中运行,这导致GPU内存无法释放,除非关闭apache服务器 那么,当Apache+Mod_wsgi+Django调用Keras模型时,有没有办法控制GPU内存的释放 谢谢 这将清除当前会话(图),因此过时的模型应该从GPU中删除。如果它不起作用,您可能需要“删除模型”并重新加载它。对于无法使K.cle
这将清除当前会话(图),因此过时的模型应该从GPU中删除。如果它不起作用,您可能需要“删除模型”并重新加载它。对于无法使
K.clear\u session()
起作用的人,有一种替代解决方案:
from numba import cuda
cuda.select_device(0)
cuda.close()
Tensorflow
只是将内存分配给GPU,而CUDA负责管理GPU内存
如果CUDA在您使用
K.clear_session()
清除所有图形后以某种方式拒绝释放GPU内存,然后,您可以使用cuda
库直接控制cuda以清除GPU内存。是的,但由于某种原因,最新的spyder控制台内核崩溃,尽管GPU内存再次可用
from numba import cuda
cuda.select_device(0)
cuda.close()
当我在Jupyter笔记本中使用Keras和TensorFlow后端时,这一个实际上对我有效。谢谢!没有其他方法适合我。但有没有办法在不重启Jupyter内核的情况下运行新的Keras模型呢?一旦我用cuda.close()关闭了cuda,我该如何训练新模型呢
from numba import cuda
cuda.select_device(0)
cuda.close()