当我们使用nvidia-smi查看显卡占用时发现显存被占用,但是看不到pid进程
可以使用下面的命令,查看详细的pid进程号和占用的显存:
nvidia-smi --query-compute-apps=pid,used_memory --format=csv
这时会出现占用显存的进程:
解决:
直接使用sudo kill pid,kill指定pid进程,本文案例为22131,则为以下命令
sudo kill 22131
若出现没有找到文件时,我们可以尝试如下方法直接杀死进程:
fuser 命令来查找哪些进程正在使用 /dev/nvidia* 文件
awk 命令来处理 fuser 的输出,遍历每一行输出,以 "kill -9 " 开头,后面跟着每个进程的PID
执行前面生成的命令:
sudo fuser -v /dev/nvidia* |awk '{for(i=1;i<=NF;i++)print "kill -9 " $i;}' | sudo sh