进程Kill杀死后GPU显存没有释放仍然被占用(僵尸进程)
·
清理占用GPU显存的僵尸进程
概要
在基于Linux(Ubuntu)系统进行开发时。程序调用GPU进行运算(如深度学习框架,尤其是Paddle框架),若进程非正常终止,最常见是在进程运行中使用Ctrl+C杀死进程,进程结束后会留下僵尸进程,使用kill -9 pid指令提示 No such process。
网上很多博客介绍使用fuser -v /dev/nvidia*查看PID,但这个指令返回的结果只有pid,没有其他信息,然后手动复制,一个一个尝试。
这样操作流程比较费事,每次都要折腾挺久,所以我加了个流程,自动清理。
Talk is cheap. Show me the code
具体指令如下:
fuser -v /dev/nvidia0 | awk '{print $0}' | xargs kill -9
这行指令能够自动清理编号为0的显卡上当前用户的所有调用GPU进程,注意使用该指令会清空所有程序。清理第二块卡将0改成1,以此类推。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)