我正在使用带有8个GTX 1080的服务器来训练我的神经网络与Keras。我有不同的网络架构和不同的培训数据,所以我必须经常调用我的脚本进行学习。
在成功完成几次后,一些GPU给了我一个CUDA_OUT_OF_MEMORY_ERROR。慢慢地,但肯定所有8个GPU都需要训练。
我用sudo nvidia-smi
列出了正在运行的进程,并杀死了我仍在运行的python进程。但在那之后:没有变化。
我还使用gc.collect()
调用了python垃圾收集器,我的脚本中的Keras函数K.clear_session()
和del model
没有任何改进。我仍然得到Cuda错误,没有GPU想要开始训练。
因为它是共享计算机,我无法重新启动它。
在我看来,我看起来已经填满了记忆,现在它已经满了。 您有什么想法来清除GPU的内存? 他们不应该自己做吗?