建设网站宽度最好是多少钱,房屋装修设计软件哪个好用,thinkphp网站开发实战教程,郑州建设信息在服务器的docker里面使用显卡发现在终端 ctrl c之后#xff0c;代码会停掉但是GPU资源不会释放。 nvidia-smi里面还看不到PID进程号#xff0c;有PID号直接kill 就行了
如果想要把GPU上所有程序全都杀掉可以执行下面的命令
fuser -v /dev/nvidia* |awk {for(i1;iNF;i…在服务器的docker里面使用显卡发现在终端 ctrl c之后代码会停掉但是GPU资源不会释放。 nvidia-smi里面还看不到PID进程号有PID号直接kill 就行了
如果想要把GPU上所有程序全都杀掉可以执行下面的命令
fuser -v /dev/nvidia* |awk {for(i1;iNF;i)print kill -9 $i;} | sh但是我的显卡跑了多组实验一个实验正常再跑另一组停掉了。我不希望把显卡上所有程序都杀掉只释放已经Kill掉进程的那一组显存就行。所以就捣鼓了一下写成blog造福大家 为了保险起见我将要杀死的进程的 PID 号保存到一个文件中而不是直接杀死它们当然也是可以做到。通过修改下面的命令就可以实现 grep /debug 是查找命令里面的关键字区分哪一组是正在跑哪一组是死掉了的 echo $pid pids_to_kill.txt 可以替换为kill -9 $pid 来直接杀掉
fuser -v /dev/nvidia* | awk {print $0} | grep -Eo [0-9] | while read pid; do cmd$(ps -fp $pid | grep /debug); if [ -n $cmd ]; then echo $pid pids_to_kill.txt; fi; done上面这个命令会将所有包含 /debug 字符串的、正在使用 NVIDIA GPU 的进程的 PID 号写入到 pids_to_kill.txt 文件中而不是直接杀死这些进程。 可以在需要的时候使用这个文件来杀死这些进程。
while read pid; do kill -9 $pid; done pids_to_kill.txt这个命令会读取 pids_to_kill.txt 文件中的每一行也就是每一个 PID然后杀死对应的进程。