Process finished with exit code 137 (interrupted by signal 9: SIGKILL)错误

程序正确运行结束的提示是:Process finished with exit code 0。如果程序出现Process finished with code 137 (interrupted by signal 9: SIGKILL)。程序并没有运行完,系统强制杀死进程,一般来说是因为内存不足或者CPU不够用

  • 出现这个信息说明发生了内存不足的问题,需要让程序少一些内存占用,在keras中,可以选择小的batch_size,不要把一整个大的文件一次性读到内存里。
  • loss或者网络的输出不断积累导致计算图不断扩张,解决方案:在训练的循环过程中,需要用到loss,则用loss.data[0]。(https://www.cnblogs.com/dreamer123/p/7668234.html)
  • 如果是ubuntu系统,出现此问题的一个原因是cpu不够了,当运行的网络很复杂的时候,需要加载很大的权重,需要cpu来做,会导致这个错误。
  • 如果使用了docker,解决方案就是开docker时候就预设更大内存。
  • 如果使用虚拟机,就增加虚拟机里面ubuntu的内存,可以参考这篇文章https://blog.csdn.net/zengxiangyu0406/article/details/122101827

你可能感兴趣的:(linux)