每次隔一段時間不用一個命令就會忘記怎麼敲,與其每次上網百度不如自己整理一下~
1、殺死所有python訓練程序
有時候在終端跑訓練的時候會用到nohup放在後臺跑,防止誤操作中斷。
可是這種方式有個麻煩的點是,ctrl+C關閉程序時只能關閉輸出信息的前端程序,關不了後臺的訓練程序。
而且有時候明明你終止了訓練程序,GPU的進程仍然沒有釋放,watch nvidia-smi看的時候仍然滿滿當當,運行其他程序時仍然會報內存溢出,真想把GPU的佔用清個零!
於是這個條目孕育而生~
首先要有killall這個工具,而且最讓人頭疼的是,killall的包不叫killall,而是看名字感覺八竿子打不到一起的psmisc
apt-get install psmisc
然後要殺死某一個python程序的話,先用ps -u根據列出所有正在跑的進程,根據時間(或其他信息)找到對應的python(有可能叫Java)程序的PID,然後kill -9 {你找到的PID}即可。
killall用於殺死某一個命令的所有進程,使用方法是
killall python
殺死了所有python程序,GPU佔用恢復爲0,開心,又可以愉快地科研了。