如何使用关键字在 nvidia-smi 中使用 PID 终止 GPU 上的进程?
How to kill process on GPUs with PID in nvidia-smi using keyword?
如何在终端中为特定程序(例如 python)终止 GPU 上的 运行 进程?
例如两个进程在上面的图片中是 运行 python 并杀死它们以查看 nvidia-smi
中的底部图片
你可以在nvidia-smi中grep python然后传PID给
kill -9 命令,例如
sudo kill -9 $( nvidia-smi | grep 'python' | sed -n
's/|\s*[0-9]\s([0-9])\s.*//p' | sed '/^$/d')
接受的答案对我不起作用,可能是因为 nvidia-smi
在不同的 versions/hardware 中有不同的格式。
我正在使用更简洁的命令:
nvidia-smi | grep 'python' | awk '{ print }' | xargs -n1 kill -9
您可以替换 awk 表达式中的 </code> 以适合您的 <code>nvidia-smi
输出。这是 PID 出现的第 n 列。
使用 nvidia-smi
或 top 命令查看进程 运行 并终止命令:
sudo kill -9 PID
我想当 nvidia-smi 显示占用 GPU 内存的进程时,问题已经得到解答。对我来说,即使 nvidia-smi 没有显示任何进程,GPU 内存正在被使用,我想杀死它们。
在这种情况下,方法是使用 fuser 命令找出使用特定 GPU 设备的进程。在我的例子中,我想杀死所有使用 GPU 设备 3 的进程。
这可以使用命令完成:
sudo fuser -k /dev/nvidia3
您可以使用 -ki 以交互方式终止进程。
作为其他答案之一建议您可以使用:(将 5 替换为存在进程 ID 的列号)
nvidia-smi | grep 'python' | awk '{ print }' | xargs -n1 kill -9
如果您可能不得不经常使用它,您可以为该命令创建一个别名:为此,您应该编辑 ~/.bash_aliases
文件:
nano ~/.bash_aliases
并向其中添加以下行并保存文件:
alias killgpuprocess="nvidia-smi | grep 'python' | awk '{ print }' | xargs -n1 kill -9"
然后(这次正好需要):
source ~/.bashrc
那么如果你运行
killgpuprocess
它将终止 GPU 上的现有进程。
如何在终端中为特定程序(例如 python)终止 GPU 上的 运行 进程? 例如两个进程在上面的图片中是 运行 python 并杀死它们以查看 nvidia-smi
中的底部图片你可以在nvidia-smi中grep python然后传PID给 kill -9 命令,例如
sudo kill -9 $( nvidia-smi | grep 'python' | sed -n 's/|\s*[0-9]\s([0-9])\s.*//p' | sed '/^$/d')
接受的答案对我不起作用,可能是因为 nvidia-smi
在不同的 versions/hardware 中有不同的格式。
我正在使用更简洁的命令:
nvidia-smi | grep 'python' | awk '{ print }' | xargs -n1 kill -9
您可以替换 awk 表达式中的 </code> 以适合您的 <code>nvidia-smi
输出。这是 PID 出现的第 n 列。
使用 nvidia-smi
或 top 命令查看进程 运行 并终止命令:
sudo kill -9 PID
我想当 nvidia-smi 显示占用 GPU 内存的进程时,问题已经得到解答。对我来说,即使 nvidia-smi 没有显示任何进程,GPU 内存正在被使用,我想杀死它们。
在这种情况下,方法是使用 fuser 命令找出使用特定 GPU 设备的进程。在我的例子中,我想杀死所有使用 GPU 设备 3 的进程。 这可以使用命令完成:
sudo fuser -k /dev/nvidia3
您可以使用 -ki 以交互方式终止进程。
作为其他答案之一建议您可以使用:(将 5 替换为存在进程 ID 的列号)
nvidia-smi | grep 'python' | awk '{ print }' | xargs -n1 kill -9
如果您可能不得不经常使用它,您可以为该命令创建一个别名:为此,您应该编辑 ~/.bash_aliases
文件:
nano ~/.bash_aliases
并向其中添加以下行并保存文件:
alias killgpuprocess="nvidia-smi | grep 'python' | awk '{ print }' | xargs -n1 kill -9"
然后(这次正好需要):
source ~/.bashrc
那么如果你运行
killgpuprocess
它将终止 GPU 上的现有进程。