查询GPU使用情况以及杀死GPU上的多个无用进程


一、查看gpu的情况

nvidia-smi


二、查看gpu上的进程情况

fuser -v /dev/nvidia*
ps -aux |grep 具体的PID


三、一次杀死多个gpu进程
https://www.cnblogs.com/dingyingsi/p/5305792.html

ps -ef | grep firefox | grep -v grep | cut -c 9-15 | xargs kill -9


说明:
“grep firefox”的输出结果是,所有含有关键字“firefox”的进程。

“grep -v grep”是在列出的进程中去除含有关键字“grep”的进程,相当去去除掉查询的这个进程。

“cut -c 9-15”是截取输入行的第9个字符到第15个字符,9+6=15,而这正好是进程号PID共5位,不包含最后一个。 即index为9,第一个字符index为0

“xargs kill -s 9”中的xargs命令是用来把前面命令的输出结果(PID)作为“kill -9”命令的参数,并执行该命令。 “kill -9”会强行杀掉指定进程。


四、查看gpu特定进程全部信息

fuser -v /dev/nvidia*|cut -c 1-1000|xargs ps -u --pid

这里的数字1我尝试了0会报错,但是2,3,4...都没有报错
1000我是随便取的,感觉像一个最大值,但和三里面说的不太一样,还没有完全明白为什么,希望有人能说一下


五、指定gpu上进程并全部杀掉
在杀之前建议先看一下输出的pid是否正确,只看

fuser -v /dev/nvidia*|cut -c 1-1000|xargs ps -u --pid|grep test_par*
fuser -v /dev/nvidia*|cut -c 1-1000|xargs ps -u --pid|grep test_par*|cut -c 9-15

杀进程命令

fuser -v /dev/nvidia*|cut -c 1-1000|xargs ps -u --pid|grep test_par*|cut -c 9-15|xargs kill -9 
fuser -v /dev/nvidia*  # 查看一下是否杀死

 

你可能感兴趣的:(linux)