指定GPU運行和訓練 python程序

一、命令行運行python程序時

首先查看哪些GPU空閒,nvidia-smi顯示當前GPU使用情況。

nvidia-smi

如下圖所示:服務器中的兩個顯卡,編號爲0、1 . 都被同一個進程 PID 3016 佔用。
1


GPU:GPU 編號;
Name:GPU 型號;
Persistence-M:持續模式的狀態。持續模式雖然耗能大,但是在新的GPU應用啓動時,花費的時間更少,這裏顯示的是off的狀態;
Fan:風扇轉速,從0到100%之間變動;
Temp:溫度,單位是攝氏度;
Perf:性能狀態,從P0到P12,P0表示最大性能,P12表示狀態最小性能(即 GPU 未工作時爲P0,達到最大工作限度時爲P12)。
Pwr:Usage/Cap:能耗;
Memory Usage:顯存使用率;
Bus-Id:涉及GPU總線的東西,domain🚌device.function;
Disp.A:Display Active,表示GPU的顯示是否初始化;
Volatile GPU-Util:浮動的GPU利用率;
Uncorr. ECC:Error Correcting Code,錯誤檢查與糾正;
Compute M:compute mode,計算模式。


  • 指定空閒的GPU運行python程序
CUDA_VISIBLE_DEVICES=0,1 python test.py  
  • 在python程序中指定GPU
在 train.py 最上方,設定使用的GPU 編號, 當這兩行代碼註釋掉時,訓練會自動使用該服務器的所有資源
import os
os.environ["CUDA_VISIBLE_DEVICES"] = "1"

每 10s 顯示一次GPU使用情況, Xshell 中 CTRL + C 中止:

watch -n 10 nvidia-smi

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章