我可以在不重启的情况下在Linux中使用CUDA停止所有进程吗?

时间:2010-12-04 15:30:57

标签: cuda restart kill-process

是否可以通过CUDA使用GPU停止所有正在运行的处理,而无需重新启动机器?

3 个答案:

答案 0 :(得分:13)

lsof实用程序将对此有所帮助。您可以通过以下方式获取访问NVIDIA显卡的进程列表:

lsof /dev/nvidia*

然后使用kill或pkill终止所需的进程。请注意,如果X正在运行,您可能不想杀死它。在我的桌面系统上,X和kwin都在访问GPU。

答案 1 :(得分:7)

您可以使用nvidia-smi然后

检查流程
kill -9 <pid>

答案 2 :(得分:3)

简短答案:

lsof /dev/nvidia* | awk '{print $2}' | xargs -I {} kill {}

通过一个命令完成作业。

长答案:

lsof /dev/nvidia*

为您提供运行在GPU卡上的PID,如下所示:

COMMAND  PID    USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
python  7215 *******  mem    CHR 195,255           434 /dev/nvidiactl
python  7215 *******  mem    CHR   195,0           435 /dev/nvidia0

awk '{print $2}'

选择PID列(在我的情况下是第二列),

xargs -I {} kill {}

杀死那些PID作业。