Pytorch 如何查看、釋放已關閉程序占用的GPU資源
看代碼吧~
import torch print(torch.cuda.current_device()) print(torch.cuda.device_count()) print(torch.cuda.get_device_name()) print(torch.cuda.is_available())
打開terminal輸入nvidia-smi可以看到當前各個顯卡及用戶使用狀況,如下圖所示,使用kill -9 pid(需替換成具體的編號)即可殺掉占用資源的程序,殺完后結果如下圖所示,可以發(fā)現(xiàn)再也沒有對應自己的程序了!


補充一下師弟幫忙的記錄截圖,方便以后查詢使用:

補充:如何處理Pytorch使用GPU后仍有GPU資源未釋放的情況
使用PyTorch設置多線程(threads)進行數(shù)據(jù)讀?。―ataLoader),其實是假的多線程,他是開了N個子進程(PID都連著)進行模擬多線程工作,所以你的程序跑完或者中途kill掉主進程的話,子進程的GPU顯存并不會被釋放,需要手動一個一個kill才行
具體方法描述如下:
1.先關閉ssh(或者shell)窗口,退出重新登錄
2.查看運行在gpu上的所有程序:
fuser -v /dev/nvidia*
3.kill掉所有(連號的)僵尸進程
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持本站。
版權聲明:本站文章來源標注為YINGSOO的內(nèi)容版權均為本站所有,歡迎引用、轉載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務器上建立鏡像,否則將依法追究法律責任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學習參考,不代表本站立場,如有內(nèi)容涉嫌侵權,請聯(lián)系alex-e#qq.com處理。
關注官方微信