【Linux高效小trick】Linux下杀死僵尸进程,释放GPU内存,让代码全速运行~

问题描述

        在自己电脑上或Linux服务器上是不是经常看到这个页面,进程很多,但是进入进程详细信息就会发现明明进程老早就停止了,但是还是在占用内存???强迫症的真受不了,还影响把自己深度下去!!!下面的教程帮你解决这个问题。

 

 那么,怎么看确定进程有没有运行结束呢?

①第一个方法是可以过上几分钟输入下面的命令,看【TIME】的数值有没有增加,有增加一般就是在运行,如果没有增加那就是结束了。

注意,这里的【TIME】是累积CPU的时间而不是程序开始运行的时间,如果想看进程实际运行时间,需要看下面的方法二。

②第二个方法是用查看进程实际的运行时间。

命令如下:

查看进程运行时间的代码是:

ps -eo pid,lstart,etime | grep PID

例如:我想查看演示进程PID=14143的开始时间和运行时间,就可以这样输入

ps -eo pid,lstart,etime | grep 14143

显示结果为:

但是输入【nvidia-smi】看到【PID】,然后再输入【ps u PID】的显示却是:

这里就出现不一样了~~~ 

所以,查看进程的实际运行时间需要下面的,不要输错了哦

ps -eo pid,lstart,etime | grep PID

原因分析:

好了,上述提到的进程是僵尸进程,占着空不干事,应kill

我理解的僵尸进程是:进程之前运行过,但是代码出问题之后不自动取消显示,还显示在nvidia显示面板上

这就需要对这些僵尸进程进行处理~~~


解决方案:

杀死僵尸进程需要是管理员账号!!!

如果你不是管理员账号,那你只能干看着了

首先,需要切换到管理员(这里默认为【user】)账号。普通用户输入下面命令可以切换:

【如果已经登入管理员账号,本步骤可以忽略,直接进行杀死僵尸进程】

su user

然后提示你输入管理员账号的密码,输入即可。注意,这里是保密机制,不会显示你的输入。

 然后,使用下面的命令杀死僵尸进程;

sudo kill -9 僵尸进程PID

随后,再次出现类似这种显示,就说明成功了。再次输入【nvidia-smi】就发现僵尸进程没了!

完整的流程如下图: 

好了,大功告成,完结撒花!

欢迎关注、点赞、收藏、评论、分享给好友,一起学习有趣的新知识!!! 

猜你喜欢

转载自blog.csdn.net/Thebest_jack/article/details/127266890
今日推荐