在運算執行個體中啟用 PMU,並在運算執行個體上執行效能監控軟體後,您可以執行下列操作:
變更在運算執行個體中啟用的 PMU 類型。如要追蹤不同類型的低階 CPU 事件,這項變更就非常實用。
在運算執行個體中停用 PMU。如果您不再需要存取 PMU 中的效能計數器,這項操作就非常實用。
本文說明如何變更 Compute Engine 執行個體中啟用的效能監控單元 (PMU) 類型,或停用 PMU。如要進一步瞭解 PMU,請參閱「PMU 總覽」。
事前準備
-
如果尚未設定驗證,請先完成設定。
驗證可確認您的身分,以便存取 Google Cloud 服務和 API。如要從本機開發環境執行程式碼或範例,可以選取下列任一選項,向 Compute Engine 進行驗證:
Select the tab for how you plan to use the samples on this page:
gcloud
-
安裝 Google Cloud CLI。 完成後,執行下列指令來初始化 Google Cloud CLI:
gcloud init若您採用的是外部識別資訊提供者 (IdP),請先使用聯合身分登入 gcloud CLI。
- Set a default region and zone.
REST
如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。
安裝 Google Cloud CLI。 完成後,執行下列指令來初始化 Google Cloud CLI:
gcloud init若您採用的是外部識別資訊提供者 (IdP),請先使用聯合身分登入 gcloud CLI。
詳情請參閱 Google Cloud 驗證說明文件中的「使用 REST 進行驗證」。
必要的角色
如要取得變更 Compute 執行個體中已啟用 PMU 類型或停用該類型的權限,請要求管理員在專案中授予您「Compute 執行個體管理員 (v1) 」(
roles/compute.instanceAdmin.v1) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。這個預先定義的角色具備變更或停用 Compute 執行個體中已啟用 PMU 類型所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:
所需權限
如要變更或停用 Compute 執行個體中啟用的 PMU 類型,您必須具備下列權限:
-
如要更新運算執行個體:
compute.instances.update運算執行個體
變更 Compute 執行個體中的 PMU 類型
變更現有 A4X、C4A、C4 或 M4 執行個體的 PMU 類型前,請先使用 Google Cloud CLI 或 REST API 查看運算執行個體的詳細資料。在指令或 API 要求的輸出內容中,確認下列項目:
如要確認計算執行個體是否已啟用 PMU 類型,請檢查
performanceMonitoringUnit欄位的值。如果缺少這個欄位,PMU 就會停用。如要啟用強化型 PMU 類型,請檢查
machineType欄位的值,確認運算執行個體使用下列其中一種機器類型:具有 144 或 288 個 vCPU 的 C4 機器類型
下列其中一種 M4 機型:
m4-megamem-112m4-megamem-224m4-ultramem-56m4-ultramem-112m4-ultramem-224
如果運算執行個體使用其他機器類型,您必須變更運算執行個體使用的機器類型,才能監控強化型 PMU 類型。
您不必停止運算執行個體,即可變更 PMU 類型。不過,如要讓變更生效,您必須按照本節所述重新啟動運算執行個體。
如要變更現有運算執行個體中啟用的 PMU 類型,請選取下列其中一個選項:
gcloud
建立空白的 YAML 檔案。
如要將運算執行個體的屬性匯出至您剛建立的 YAML 檔案,請使用
gcloud compute instances export指令:gcloud compute instances export INSTANCE_NAME \ --destination=YAML_FILE \ --zone=ZONE更改下列內容:
INSTANCE_NAME:運算執行個體的名稱。YAML_FILE:您在上一個步驟中建立的 YAML 檔案路徑。ZONE:運算執行個體所在的可用區。
在 YAML 設定檔中找出
performanceMonitoringUnit欄位,然後變更其值,指定其他 PMU 類型:advancedMachineFeatures: performanceMonitoringUnit: PMU_TYPE將
PMU_TYPE替換為下列其中一個值:架構 PMU 類型:
ARCHITECTURAL標準 PMU 類型:
STANDARD加強型 PMU 類型:
ENHANCED
如要更新並重新啟動運算執行個體,請使用
gcloud compute instances update-from-file指令,並將--most-disruptive-allowed-action旗標設為RESTART:gcloud compute instances update-from-file INSTANCE_NAME \ --most-disruptive-allowed-action=RESTART \ --source=YAML_FILE \ --zone=ZONE更改下列內容:
INSTANCE_NAME:運算執行個體的名稱。YAML_FILE:YAML 檔案的路徑,內含您在上一步修改的設定資料。ZONE:運算執行個體所在的可用區。
REST
如要查看現有運算執行個體的屬性,請向
instances.get方法發出GET要求:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME更改下列內容:
PROJECT_ID:運算執行個體所在的專案 ID。ZONE:運算執行個體所在的可用區。INSTANCE_NAME:現有運算執行個體的名稱。
如要更新並重新啟動運算執行個體,請對
instances.update方法發出PUT要求,如下所示:在要求網址中,加入設為
RESTART的mostDisruptiveAllowedAction查詢參數。在要求主體中,使用上一個步驟的
GET要求輸出內容。不過,在advancedMachineFeatures欄位中,您必須將performanceMonitoringUnit欄位的值變更為所選 PMU 類型。
PUT要求類似於下列內容:PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME?mostDisruptiveAllowedAction=RESTART { "advancedMachineFeatures": { "performanceMonitoringUnit": "PMU_TYPE" }, ... }將
PMU_TYPE替換為下列其中一個值:架構 PMU 類型:
ARCHITECTURAL標準 PMU 類型:
STANDARD加強型 PMU 類型:
ENHANCED
如要進一步瞭解如何更新運算執行個體的屬性,請參閱「更新執行個體屬性」。
在運算執行個體中停用 PMU
您可以在運算執行個體中停用 PMU,不必停止運算執行個體。不過,如要讓變更生效,您必須按照本節所述重新啟動運算執行個體。
如要在現有運算執行個體中停用 PMU,請選取下列任一選項:
gcloud
建立空白的 YAML 檔案。
如要將運算執行個體的屬性匯出至您剛建立的 YAML 檔案,請使用
gcloud compute instances export指令:gcloud compute instances export INSTANCE_NAME \ --destination=YAML_FILE \ --zone=ZONE更改下列內容:
INSTANCE_NAME:運算執行個體的名稱。YAML_FILE:您在上一個步驟中建立的 YAML 檔案路徑。ZONE:運算執行個體所在的可用區。
在 YAML 設定檔中,移除
performanceMonitoringUnit欄位。如果advancedMachineFeatures欄位空白,請一併移除。advancedMachineFeatures: performanceMonitoringUnit: PMU_TYPE如要更新並重新啟動運算執行個體,請使用
gcloud compute instances update-from-file指令,並將--most-disruptive-allowed-action旗標設為RESTART:gcloud compute instances update-from-file INSTANCE_NAME \ --most-disruptive-allowed-action=RESTART \ --source=YAML_FILE \ --zone=ZONE更改下列內容:
INSTANCE_NAME:運算執行個體的名稱。YAML_FILE:YAML 檔案的路徑,內含您在上一步修改的設定資料。ZONE:運算執行個體所在的可用區。
REST
如要查看現有運算執行個體的屬性,請向
instances.get方法發出GET要求:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME更改下列內容:
PROJECT_ID:運算執行個體所在的專案 ID。ZONE:運算執行個體所在的可用區。INSTANCE_NAME:現有運算執行個體的名稱。
如要更新並重新啟動運算執行個體,請對
instances.update方法發出PUT要求。請在要求中執行下列操作:在要求網址中,加入設為
RESTART的mostDisruptiveAllowedAction查詢參數。在要求主體中,使用上一個步驟的
GET要求輸出內容。不過,您必須移除performanceMonitoringUnit欄位,如果advancedMachineFeatures欄位中沒有其他欄位,也必須移除advancedMachineFeatures欄位。
PUT要求類似於下列內容:PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME?mostDisruptiveAllowedAction=RESTART { ~"advancedMachineFeatures": { ... }~, ... }
如要進一步瞭解如何更新運算執行個體的屬性,請參閱「更新執行個體屬性」。
後續步驟
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2026-03-12 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["難以理解","hardToUnderstand","thumb-down"],["資訊或程式碼範例有誤","incorrectInformationOrSampleCode","thumb-down"],["缺少我需要的資訊/範例","missingTheInformationSamplesINeed","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2026-03-12 (世界標準時間)。"],[],[]] -