本文說明如何使用叢集健康狀態掃描器 (CHS) 工具,測試 GPU 叢集的問題。如要測試在 Cluster Director 中建立的叢集,請參閱「監控叢集健康狀態」。
CHS 工具會檢查 GPU 叢集的健康狀態,並執行測試來確認叢集是否已準備好執行工作負載。您可以透過 CHS 執行主動健康狀態檢查,或在工作負載發生問題時,將 CHS 做為診斷工具。除了檢查叢集設定外,您還可以執行下列測試:
- NCCL 檢查:使用 NVIDIA Collective Communications Library (NCCL) 驗證 GPU 之間的網路通訊。
- GPU 檢查:使用 NVIDIA 的 Data Center GPU Manager (DCGM) 工具,檢查個別 GPU 的健康狀態。
- Neper 檢查:使用 Neper 工具評估叢集內的網路效能。
- 進度落後偵測:在節點之間執行網路流量模式,與 LLM 訓練工作負載管道平行處理期間的模式非常相似。進一步瞭解進度落後項目偵測。
- Tinymax 檢查:使用 Maxtext (開放原始碼 LLM 架構) 評估叢集內的機器學習訓練。
您只能在未執行任何工作或工作負載的節點上,執行 CHS 檢查和測試。如果嘗試在忙碌的節點上執行檢查或測試,檢查或測試就會失敗。
無論您使用哪種佈建模型建立叢集,只要 GPU 叢集是由 Google Kubernetes Engine (GKE) 或 Slurm 自動化調度管理,即可使用 CHS 工具。不過,CHS 僅適用於下列機器類型:
- A4
- A3 Ultra
- A3 Mega
- A3 High
以下章節說明如何安裝 CHS,以及如何使用 CHS 執行健康狀態檢查和檢查設定。
安裝 CHS
請按照下列程序安裝 CHS:
前往「Compute Engine」>「VM instances」(VM 執行個體) 頁面。
找出登入節點。名稱可能符合「
DEPLOYMENT_NAME+login-001」模式。在登入節點的「連線」欄中,按一下「SSH」。
使用下列指令複製存放區,並移至存放區的根目錄:
git clone https://github.com/GoogleCloudPlatform/cluster-health-scanner && cd cluster-health-scanner
使用下列指令安裝 Google Cloud CLI 的依附元件:
pip3 install -r cli/requirements.txt
選用:如要讓
configcheck指令從叢集擷取設定值,而不必為每部機器重新驗證,請使用下列指令將 Google Cloud CLI SSH 金鑰新增至本機 SSH 代理程式:ssh-add ~/.ssh/google_compute_engine
使用下列指令新增
cluster_diag別名:cluster_diag.pyalias cluster_diag="python3 cli/cluster_diag.py"
執行健康狀態檢查
安裝 CHS 後,請執行下列步驟,檢查 GPU 叢集的健康狀態:
前往「Compute Engine」>「VM instances」(VM 執行個體) 頁面。
找出登入節點。名稱可能符合「
DEPLOYMENT_NAME+login-001」模式。在登入節點的「連線」欄中,按一下「SSH」。
確認您位於存放區的根目錄。
使用下列指令檢查叢集的目前狀態:
cluster_diag -o ORCHESTRATOR healthscan GPU_TYPE status
更改下列內容:
ORCHESTRATOR:視使用的自動化調度管理工具而定,可能是gke或slurm。GPU_TYPE:您使用的 GPU 機器類型,可以是下列任一值:a4-highgpu-8ga3-ultragpu-8ga3-megagpu-8ga3-highgpu-8ga3-highgpu-4ga3-highgpu-2ga3-highgpu-1g
使用下列指令檢查叢集內個別 GPU 的健康狀態:
cluster_diag -o ORCHESTRATOR healthscan GPU_TYPE gpu
更改下列內容:
ORCHESTRATOR:視使用的自動化調度管理工具而定,可能是gke或slurm。GPU_TYPE:您使用的 GPU 機器類型,可以是下列任一值:a4-highgpu-8ga3-ultragpu-8ga3-megagpu-8ga3-highgpu-8ga3-highgpu-4ga3-highgpu-2ga3-highgpu-1g
選用:使用下列範本指令執行額外檢查。 建議新增
--run_only_on_available_nodes旗標,略過無法使用的節點:cluster_diag -o ORCHESTRATOR healthscan GPU_TYPE CHECK
更改下列內容:
ORCHESTRATOR:視使用的自動化調度管理工具而定,可能是gke或slurm。GPU_TYPE:您使用的 GPU 機器類型,可以是下列任一值:a4-highgpu-8ga3-ultragpu-8ga3-megagpu-8ga3-highgpu-8ga3-highgpu-4ga3-highgpu-2ga3-highgpu-1g
CHECK:要執行的檢查。請使用下列其中一個選項:- 狀態
- nccl
- GPU
- straggler
- 奈培
- tinymax
檢查設定
安裝 CHS 後,請執行下列步驟,檢查叢集的設定:
- 確認您位於存放區的根目錄。
使用下列指令檢查叢集設定。根據預設,這項指令會產生差異;如要略過差異並只列印設定,請新增
--no-diff旗標:cluster_diag -o ORCHESTRATOR configcheck GPU_TYPE
更改下列內容:
ORCHESTRATOR:視使用的自動化調度管理工具而定,可能是gke或slurm。GPU_TYPE:您使用的 GPU 機器類型,可以是下列任一值:a4-highgpu-8ga3-ultragpu-8ga3-megagpu-8ga3-highgpu-8ga3-highgpu-4ga3-highgpu-2ga3-highgpu-1g
以下螢幕截圖顯示設定檢查成功時的結果: