问题描述

在某些任务结束后,特别是手动终止或程序报错的情况下,程序已结束,nvidia-smi 也看不到正在运行的程序,但 GPU 的显存并没有完全释放。这可能是由于程序某些子进程仍在运行导致,需要手动 kill 掉未结束的进程。

解决办法

查看运行在GPU上的所有进程

1
fuser -v /dev/nvidia*

得到如下结果,

image-20210517094641921

kill 掉 0 卡上所有未正常结束的子进程,

1
kill -9 32360 32433 32505 38997 39069 39141 39213