Questo documento spiega il comportamento, la fatturazione e le limitazioni dell'unità di monitoraggio delle prestazioni (PMU) in Compute Engine. Per scoprire come attivare la PMU in un'istanza di macchina virtuale (VM) C4A o C4, consulta Attiva la PMU nelle VM.
La PMU è un componente hardware all'interno del core della CPU che monitora il modo in cui il processore esegue il codice. Se attivi la PMU in una VM C4A o C4, puoi accedere ai contatori delle prestazioni nella PMU utilizzando il software di monitoraggio delle prestazioni. Questo approccio ti consente di ottimizzare i workload sensibili alle prestazioni, come quelli di computing ad alte prestazioni (HPC) o di machine learning (ML), aiutandoti a identificare e risolvere i colli di bottiglia delle prestazioni nelle tue applicazioni.
Come funziona l'unità di gestione dell'alimentazione
La PMU è composta da un insieme di contatori hardware chiamati contatori di monitoraggio delle prestazioni (PMC). Questi contatori sono registri specifici del modello che conteggiano ogni volta che si verifica un evento del processore di basso livello, ad esempio una previsione errata del ramo o fallimento della cacheche, all'interno della CPU. Puoi leggere e configurare i PMC nella PMU utilizzando software di monitoraggio delle prestazioni come Intel VTune Profiler.
Per impostazione predefinita, la PMU è disattivata all'interno delle VM. Per attivarlo, specifica i tipi di eventi CPU di basso livello da monitorare attivando uno dei seguenti tipi di PMU:
Architetturali (
ARCHITECTURAL
): puoi misurare i seguenti eventi di rendimento architetturale:Istruzioni di ramificazione ritirate: il numero di istruzioni di ramificazione ritirate. Utilizza questo evento per misurare l'esecuzione del codice e identificare potenziali colli di bottiglia delle prestazioni.
Branch misses retired: il numero di istruzioni di diramazione che sono state previste in modo errato, causando l'arresto del processore e l'eliminazione delle istruzioni recuperate. Se vedi un numero elevato per questo evento, puoi probabilmente ottimizzare le prestazioni della CPU.
Istruzioni ritirate: il numero di istruzioni elaborate correttamente dalla CPU. Utilizza questo evento per misurare la velocità effettiva delle istruzioni della CPU.
Slot top-down: il numero di slot disponibili all'interno della pipeline di un processore utilizzati per eseguire simultaneamente le istruzioni. Utilizza questo evento per capire con quanta efficienza il tuo codice utilizza le risorse del processore.
Cicli di core non interrotti: il numero di cicli di core quando il thread non è interrotto, ad esempio a causa della gestione dell'alimentazione o di interruzioni. Utilizza questo evento per valutare l'utilizzo complessivo del processore.
Cicli di riferimento non interrotti: il numero di cicli di riferimento quando il core non è interrotto, ad esempio durante il recupero di dati o istruzioni. Il core viene arrestato quando esegue le istruzioni
HLT
oMWAIT
. I cicli di riferimento funzionano a una frequenza fissa, fornendo un riferimento temporale stabile anche quando la velocità del processore cambia per preservare l'energia. Utilizza questo evento per misurare il tempo dedicato a un'attività e identificare i colli di bottiglia delle prestazioni nel codice.
Standard (
STANDARD
): puoi misurare tutti gli eventi del tipo di PMU architetturale e tutti gli eventi locali all'interno del core della CPU, inclusi gli eventi della cache di livello 2 (L2).Avanzato (
ENHANCED
): puoi misurare tutti gli eventi dal tipo PMU standard, tutti gli eventi locali al di fuori del core della CPU, inclusi gli eventi della cache di livello 3 (L3).
Dopo aver attivato la PMU in una VM, la PMU viene eseguita in background, monitorando continuamente gli eventi di prestazioni utilizzando i contatori delle prestazioni (PMC). Se vuoi, puoi configurare soglie per PMC specifiche utilizzando il software di monitoraggio delle prestazioni che preferisci. Se un PMC supera la soglia designata, la PMU invia una notifica al software.
Limitazioni
La PMU presenta le seguenti limitazioni:
Puoi attivare la PMU solo nelle seguenti piattaforme CPU:
Piattaforma CPU Serie di macchine supportate Eventi di rendimento supportati Processore Google Axion™ C4A Guida alla PMU Arm Neoverse V2 Processore Intel Xeon Scalable (Emerald Rapids) di 5ª generazione C4 emeraldrapids_core.json Puoi attivare il tipo di PMU Avanzata solo nelle VM che utilizzano un tipo di macchina C4 con 96 o 192 vCPU.
Prezzi
Non sono previsti costi associati all'attivazione o alla disattivazione dell'unità di misurazione delle prestazioni in una VM.