Linux

查詢已完成作業使用的峰值 GPU 記憶體

  • March 11, 2020

我有一個送出的 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 卡,無法檢查任何此類工具,但我想這將有助於您進行調查。

引用自:https://serverfault.com/questions/1006463