Multithreading

在 Slurm 作業管理器中檢查節點的 CPU/執行緒使用情況

  • September 18, 2019

我正在使用 Slurm 作業管理器的集群機器上工作。我剛剛啟動了一個多執行緒程式碼,我想檢查給定節點 ID 的核心和執行緒使用情況。例如,

scoreusage -N 92512

“scoreusage”是我不確定的命令。

自從我執行一個 slurm 集群已經有幾年了,但squeue應該給你你想要的。嘗試:

squeue --nodelist 92512 -o "%A %j %C %J"

(應該為節點 92512 上的作業提供作業 ID、作業名稱、cpus 和執行緒)

順便說一句,除非您特別想要來自一個特定節點的詳細資訊,否則您最好通過作業 ID 而不是節點 ID 進行搜尋。

網上有很多很好的網站,其中包含有關使用 slurm 的文件,可以通過 google 輕鬆找到 - 大多數執行 HPC 集群的大學等都會編寫自己的文件和幫助以及“備忘單”,根據他們特定集群的詳細資訊進行定制(s) (因此請考慮到這一點並將任何範例調整到您的集群)。slurmhttps://slurm.schedmd.com/documentation.html上也有很好的通用文件

我發現內置的 SLURM 工具非常基礎。相反,您可以使用類似htop, 的東西來實時監控(正在執行的)作業。

  1. 查找作業在哪個節點上執行:
$ scontrol show job $JOB_ID | grep ' NodeList'
  NodeList=<HOSTNAME>
  1. ssh進入節點:$ ssh <HOSTNAME>
  2. 根據需要執行監控程序,例如$ htop

引用自:https://unix.stackexchange.com/questions/381981