監控 Linux VM 的 GPU 效能


您可以使用 作業套件代理程式 (這是 Google 建議的 Compute Engine 遙測資料收集解決方案),追蹤虛擬機器 (VM) 執行個體的 GPU 使用率和 GPU 記憶體等指標。您可以使用 Ops Agent 管理 GPU VM,方法如下:

  • 透過預先設定的資訊主頁,以視覺化方式呈現 NVIDIA GPU 機隊的健康狀態。
  • 找出未充分運用的 GPU 並整合工作負載,藉此降低成本。
  • 查看趨勢來規劃擴充作業,決定何時擴充 GPU 容量或升級現有 GPU。
  • 使用 NVIDIA Data Center GPU Manager (DCGM) 剖析指標,找出 GPU 中的瓶頸和效能問題。
  • 設定代管執行個體群組 (MIG),自動調度資源。
  • 接收 NVIDIA GPU 指標的快訊。

本文說明使用 Ops Agent 監控 Linux VM 上的 GPU 的程序。或者,您也可以在 GitHub 上找到報表指令碼,用於監控 Linux VM 上的 GPU 用量,請參閱 compute-gpu-monitoring 監控指令碼。這個指令碼並未積極維護。

如要監控 Windows VM 上的 GPU,請參閱「監控 GPU 效能 (Windows)」。

總覽

在安裝代理程式的 Linux VM 上,Ops Agent 2.38.0 以上版本可自動追蹤 GPU 使用率和 GPU 記憶體使用率。這些指標是從 NVIDIA 管理程式庫 (NVML) 取得,可針對使用 GPU 的任何程序,追蹤每個 GPU 和每個程序。如要查看作業套件代理程式監控的指標,請參閱「代理程式指標:GPU」。

您也可以設定 NVIDIA Data Center GPU Manager (DCGM) 與 Ops Agent 的整合。這項整合可讓 Ops Agent 使用 GPU 上的硬體計數器追蹤指標。DCGM 可提供 GPU 裝置層級指標的存取權。包括串流多處理器 (SM) 區塊使用率、SM 占用率、SM 管道使用率、PCIe 流量率和 NVLink 流量率。如要查看 Ops Agent 監控的指標,請參閱「第三方應用程式指標:NVIDIA Data Center GPU Manager (DCGM)」。

如要使用 Ops Agent 查看 GPU 指標,請完成下列步驟:

  1. 檢查每個 VM 是否符合規定
  2. 在每個 VM 上安裝作業套件代理程式
  3. 選用:在每個 VM 上設定 NVIDIA Data Center GPU Manager (DCGM) 整合
  4. 查看 Cloud Monitoring 中的指標

限制

  • Ops Agent 不會追蹤使用 Container-Optimized OS 的 VM 的 GPU 使用率。

需求條件

檢查每個 VM 是否符合下列要求:

  • 每個 VM 都必須連結 GPU
  • 每個 VM 都必須安裝 GPU 驅動程式
  • 每個 VM 的 Linux 作業系統和版本都必須支援 Ops Agent。請參閱支援作業套件代理程式的 Linux 作業系統清單。
  • 請確認您對每個 VM 都有 sudo 存取權。

安裝作業套件代理程式

如要安裝作業套件代理程式,請完成下列步驟:

  1. 如果您先前使用 compute-gpu-monitoring 監控指令碼追蹤 GPU 使用率,請先停用服務,再安裝 Ops Agent。如要停用監控指令碼,請執行下列指令:

    sudo systemctl --no-reload --now disable google_gpu_monitoring_agent
  2. 安裝最新版本的作業套件代理程式。如需詳細操作說明,請參閱「安裝 Ops 代理程式」。

  3. 安裝 Ops Agent 後,如果您需要使用 Compute Engine 提供的安裝指令碼安裝或升級 GPU 驅動程式,請參閱「限制」一節。

查看 Compute Engine 中的 NVML 指標

您可以查看 Ops Agent 從 Compute Engine Linux VM 執行個體的「Observability」分頁收集到的 NVML 指標。

如要查看單一 VM 的指標,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面

    前往 VM 執行個體

  2. 選取 VM 即可開啟「Details」頁面。

  3. 按一下「Observability」(觀測能力) 分頁標籤,即可顯示 VM 相關資訊。

  4. 選取「GPU」快速篩選器。

如要查看多個 VM 的指標,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面

    前往 VM 執行個體

  2. 點選「Observability」分頁標籤。

  3. 選取「GPU」快速篩選器。

選用:設定 NVIDIA Data Center GPU Manager (DCGM) 整合

Ops Agent 也提供 NVIDIA 資料中心 GPU 管理工具 (DCGM) 整合功能,可收集主要的進階 GPU 指標,例如串流多處理器 (SM) 區塊使用率、SM 占用率、SM 管道使用率、PCIe 流量率和 NVLink 流量率。

這些進階 GPU 指標並未從 NVIDIA P100 和 P4 型號收集。

如需在每個 VM 上設定及使用這項整合功能的詳細操作說明,請參閱 NVIDIA Data Center GPU Manager (DCGM)

在 Cloud Monitoring 中查看 DCGM 指標

  1. 在 Google Cloud 控制台中,依序前往「Monitoring」>「Dashboards」頁面。

    前往「Monitoring」頁面

  2. 選取「Sample Library」分頁標籤。

  3. 「Filter」欄位中輸入「NVIDIA」NVIDIA GPU 監控總覽 (GCE 和 GKE) 資訊主頁顯示。

    如果您已設定 NVIDIA Data Center GPU Manager (DCGM) 整合,系統也會顯示 NVIDIA GPU Monitoring Advanced DCGM Metrics (GCE Only) 資訊主頁。

    Cloud Monitoring 資訊主頁

  4. 針對必要的資訊主頁,按一下「預覽」。系統會顯示「預覽樣本資訊主頁」頁面。

  5. 在「範例資訊主頁預覽」頁面中,按一下「匯入範例資訊主頁」

    • 「NVIDIA GPU 監控總覽 (GCE 和 GKE)」資訊主頁會顯示 GPU 指標,例如 GPU 使用率、NIC 流量率和 GPU 記憶體用量。

      GPU 使用率顯示畫面應類似以下輸出內容:

      Cloud Monitoring (NVML)

    • NVIDIA GPU Monitoring Advanced DCGM Metrics (GCE Only)」(NVIDIA GPU 監控進階 DCGM 指標 (僅限 GCE) ) 資訊主頁會顯示重要進階指標,例如 SM 使用率、SM 占用率、SM 管道使用率、PCIe 流量率和 NVLink 流量率。

      進階 CCG 指標顯示畫面會類似於以下輸出內容:

      Cloud Monitoring (DCGM)

後續步驟