在跑TensorFlow、pytorch之类的需要CUDA的程序时,强行Kill掉进程后发现显存仍然占用,这时候可以使用如下命令查看到top或者ps中看不到的进程,之后再kill掉:
fuser -v /dev/nvidia*
批量清理显卡中残留进程:
sudo fuser -v /dev/nvidia* |awk '{for(i=1;i<=NF;i++)print "kill -9 " $i;}' | sudo sh
不过有些极端情况下,这个方法似乎也无法找到那些占用显卡的进程,这时重启大法好。。。