本文說明 Compute Engine 中效能監控單元 (PMU) 的行為、帳單和限制。如要瞭解如何在 C4A 或 C4 虛擬機器 (VM) 執行個體中啟用 PMU,請參閱「在 VM 中啟用 PMU」。
PMU 是 CPU 核心中的硬體元件,可監控處理器執行程式碼的方式。在 C4A 或 C4 VM 中啟用 PMU 後,您就能使用效能監控軟體存取 PMU 中的效能計數器。這種做法可協助您找出並解決應用程式中的效能瓶頸,進而最佳化效能敏感型工作負載,例如高效能運算 (HPC) 或機器學習 (ML) 工作負載。
PMU 的運作方式
PMU 由一組稱為效能監控計數器 (PMC) 的硬體計數器組成。這些計數器是特定型號的暫存器,用於計算 CPU 中發生的低階處理器事件 (例如分支預測錯誤或快取遺漏) 的次數。您可以使用效能監控軟體 (例如 Intel VTune Profiler),在 PMU 中讀取及設定 PMC。
根據預設,VM 中會停用 PMU。如要啟用此功能,請啟用下列任一 PMU 類型,指定要追蹤的低階 CPU 事件類型:
架構 (
ARCHITECTURAL
):您可以評估下列架構效能事件:已退休的分支指令:已退休的分支指令數量。使用這個事件來評估程式碼的執行情形,並找出潛在的效能瓶頸。
已退休的分支錯誤:錯誤預測的分支指令數量,導致處理器停滯並捨棄擷取的指令。如果這個事件的數字偏高,您可能需要最佳化 CPU 效能。
已退休的指令:CPU 成功處理的指令數量。使用這個事件來測量 CPU 的指令吞吐量。
由上而下的空格:處理器管道中用於同時執行指令的可用空格數量。您可以使用這個事件,瞭解程式碼使用處理器資源的效率。
未暫停的核心週期:未暫停執行緒時的核心週期數,例如因電源管理或中斷而暫停。使用這個事件評估處理器的整體用量。
未暫停的參照週期:核心未暫停時的參照週期數量,例如擷取資料或指示時。核心執行
HLT
或MWAIT
指令時會暫停。參考週期以固定頻率運作,即使處理器的速度變更以節省電力,仍可提供穩定的時間參考。使用這個事件來評估任務所花費的時間,並找出程式碼中的效能瓶頸。
標準 (
STANDARD
):您可以測量架構 PMU 類型的所有事件,以及 CPU 核心內的任何本機事件,包括第 2 層 (L2) 快取事件。進階 (
ENHANCED
):您可以使用標準 PMU 類型,以及 CPU 核心以外的任何本機事件 (包括第 3 層 (L3) 快取事件) 來評估所有事件。
在 VM 中啟用 PMU 後,PMU 會在背景執行,持續使用 PMC 監控效能事件。您可以選擇使用偏好的效能監控軟體,為特定 PMC 設定閾值。如果 PMC 超過指定的門檻,PMU 就會通知軟體。
限制
PMU 有下列限制:
您只能在下列 CPU 平台中啟用 PMU:
CPU 平台 支援的機器系列 支援的成效事件 Google Axion™ 處理器 C4A Arm Neoverse V2 PMU 指南 第 5 代 Intel Xeon 可擴充處理器 (Emerald Rapids) C4 emeraldrapids_core.json 您只能在使用 C4 機器類型 (含 96 或 192 個 vCPU) 的 VM 中啟用強化型 PMU 類型。
定價
在 VM 中啟用或停用 PMU 不會產生任何費用。