Linux
查詢已完成作業使用的峰值 GPU 記憶體
我有一個送出的 SLURM 工作
sbatch
,例如sbatch --gres gpu:Tesla-V100:1 job.sh
job.sh
在 V100 GPU 上訓練模型。程式碼本身不會記錄 GPU 記憶體使用情況。作業完成後是否有 SLURM 命令來查詢 GPU 記憶體使用峰值?
在與我們 HPC 團隊的工作人員交談後:似乎
SLURM 不會記錄使用
sbatch
.因此,無法使用任何 SLURM 命令恢復此資訊。例如,像這樣的命令
ssacct -j [job id]
確實顯示一般記憶體使用情況,但不顯示 GPU 記憶體使用情況。
我不確定是否有可能找到由執行 sbatch 作業本身引起的負載。但是您可以嘗試檢查您的卡的一般使用率指標。據我了解,nvidia 有nvidia-smi工具。我發現了這個問題中提到的其他工具。
所以我建議安裝 nvidia-smi,並在單獨的終端視窗中使用如下命令執行它:
watch nvidia-smi
然後執行你的工作。您應該實時將更改載入到您的卡中。
另一種可能性 - 使用其他分析器跟踪您的工作 。不幸的是,我沒有 nvidia 卡,無法檢查任何此類工具,但我想這將有助於您進行調查。