測試叢集

本文說明如何使用叢集健康狀態掃描器 (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:

  1. 前往「Compute Engine」>「VM instances」(VM 執行個體) 頁面。

    前往 VM 執行個體頁面

  2. 找出登入節點。名稱可能符合「DEPLOYMENT_NAME +login-001」模式。

  3. 在登入節點的「連線」欄中,按一下「SSH」

  4. 使用下列指令複製存放區,並移至存放區的根目錄:

    git clone https://github.com/GoogleCloudPlatform/cluster-health-scanner && cd cluster-health-scanner
    
  5. 使用下列指令安裝 Google Cloud CLI 的依附元件:

    pip3 install -r cli/requirements.txt
    
  6. 選用:如要讓 configcheck 指令從叢集擷取設定值,而不必為每部機器重新驗證,請使用下列指令將 Google Cloud CLI SSH 金鑰新增至本機 SSH 代理程式:

    ssh-add ~/.ssh/google_compute_engine
    
  7. 使用下列指令新增 cluster_diag 別名:cluster_diag.py

    alias cluster_diag="python3 cli/cluster_diag.py"
    

執行健康狀態檢查

安裝 CHS 後,請執行下列步驟,檢查 GPU 叢集的健康狀態:

  1. 前往「Compute Engine」>「VM instances」(VM 執行個體) 頁面。

    前往 VM 執行個體頁面

  2. 找出登入節點。名稱可能符合「DEPLOYMENT_NAME +login-001」模式。

  3. 在登入節點的「連線」欄中,按一下「SSH」

  4. 確認您位於存放區的根目錄。

  5. 使用下列指令檢查叢集的目前狀態:

    cluster_diag -o ORCHESTRATOR healthscan GPU_TYPE status
    

    更改下列內容:

    • ORCHESTRATOR:視使用的自動化調度管理工具而定,可能是 gkeslurm
    • GPU_TYPE:您使用的 GPU 機器類型,可以是下列任一值:
      • a4-highgpu-8g
      • a3-ultragpu-8g
      • a3-megagpu-8g
      • a3-highgpu-8g
      • a3-highgpu-4g
      • a3-highgpu-2g
      • a3-highgpu-1g
  6. 使用下列指令檢查叢集內個別 GPU 的健康狀態:

    cluster_diag -o ORCHESTRATOR healthscan GPU_TYPE gpu
    

    更改下列內容:

    • ORCHESTRATOR:視使用的自動化調度管理工具而定,可能是 gkeslurm
    • GPU_TYPE:您使用的 GPU 機器類型,可以是下列任一值:
      • a4-highgpu-8g
      • a3-ultragpu-8g
      • a3-megagpu-8g
      • a3-highgpu-8g
      • a3-highgpu-4g
      • a3-highgpu-2g
      • a3-highgpu-1g
  7. 選用:使用下列範本指令執行額外檢查。 建議新增 --run_only_on_available_nodes 旗標,略過無法使用的節點:

    cluster_diag -o ORCHESTRATOR healthscan GPU_TYPE CHECK
    

    更改下列內容:

    • ORCHESTRATOR:視使用的自動化調度管理工具而定,可能是 gkeslurm
    • GPU_TYPE:您使用的 GPU 機器類型,可以是下列任一值:
      • a4-highgpu-8g
      • a3-ultragpu-8g
      • a3-megagpu-8g
      • a3-highgpu-8g
      • a3-highgpu-4g
      • a3-highgpu-2g
      • a3-highgpu-1g
    • CHECK:要執行的檢查。請使用下列其中一個選項:
      • 狀態
      • nccl
      • GPU
      • straggler
      • 奈培
      • tinymax

檢查設定

安裝 CHS 後,請執行下列步驟,檢查叢集的設定:

  1. 確認您位於存放區的根目錄。
  2. 使用下列指令檢查叢集設定。根據預設,這項指令會產生差異;如要略過差異並只列印設定,請新增 --no-diff 旗標:

    cluster_diag -o ORCHESTRATOR configcheck GPU_TYPE
    

    更改下列內容:

    • ORCHESTRATOR:視使用的自動化調度管理工具而定,可能是 gkeslurm
    • GPU_TYPE:您使用的 GPU 機器類型,可以是下列任一值:
      • a4-highgpu-8g
      • a3-ultragpu-8g
      • a3-megagpu-8g
      • a3-highgpu-8g
      • a3-highgpu-4g
      • a3-highgpu-2g
      • a3-highgpu-1g

以下螢幕截圖顯示設定檢查成功時的結果:

設定檢查結果成功。
設定檢查成功結果 (按一下即可放大)。

後續步驟