有时候用nvidia-smi看不到进程但是内存都满了,可能是有些进程没有kill

Posted 世界上只有一种英雄主义

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有时候用nvidia-smi看不到进程但是内存都满了,可能是有些进程没有kill相关的知识,希望对你有一定的参考价值。

最近遇见很尴尬的问题,这几天GPU一直是很满的状态 但是我又看不见进程nvidia-smi,如下:

 

 因为我目前正在用2跑代码,我发现23占内存一样,好嘛那我就有理由相信问题是我了,可能是我没有杀死进程,悄咪咪的要在被发现之前解决这个问题才行,并且不能断掉我自己现在跑了很久的2的代码!

网上有的答案是用fuser,

fuser -v /dev/nvidia*

但是我不想再装了,于是找到了一个更简单的方法!

出来的结果如下,好家伙不愧是我!果然是我!但是我不记得是哪个该杀死了,好在目前正在运行的代码写了日志,打开日志一看就知道要哪个进程不要哪个进程了!

 

 

找到罪魁祸首是我应该停掉第一行的代码,然后直接

kill -9 【pid】

就可以了!这个pid在这里就是701

再看3已经被空出来了,因为之前这个应该杀死的进程701在GPU3上面运行着!

 

以上是关于有时候用nvidia-smi看不到进程但是内存都满了,可能是有些进程没有kill的主要内容,如果未能解决你的问题,请参考以下文章

novelaiwebui报错gpucpu

为啥JAVA进程占用内存会超过Xmx设置

nvidia-smi GPU性能测量没有意义

Python 多进程内存占用问题

如何在 TF 2.1 上设置动态内存增长?

查询GPU时无进程运行,但是显存却被占用了