linux查看进程被kill原因

问题

训练模型时,训练到第2个epoch时程序无缘无故消失,没有打印任何异常日志

定位方法

程序加try catch,捕获异常日志,运行python时使用如下命令记录error信息

nohup python xxx.py > nohup.out 2>&1 &

结果:nohup没有记录任何信息,训练过程突然中断,感觉程序被kill

查看系统kill日志

dmesg | egrep -i -B100 'killed process'
# 或者
egrep -i 'killed process' /var/log/messages
egrep -i -r 'killed process' /var/log
# 或者
journalctl -xb | egrep -i 'killed process'

发现有一条 Out of memory: kill process 21748(python)

优化

已定位是内存不够,优化代码、加内存,问题解决

posted @ 2021-02-22 17:05  致林  阅读(5868)  评论(0编辑  收藏  举报