Vista geral da PMU


Este documento explica o comportamento, a faturação e as limitações da unidade de monitorização do desempenho (PMU) no Compute Engine. Para saber como ativar a PMU numa instância de máquina virtual (VM) C4A ou C4, consulte o artigo Ative a PMU em VMs.

A PMU é um componente de hardware no núcleo da CPU que monitoriza a forma como o processador executa o código. Ao ativar a PMU numa C4A ou C4 VM, pode aceder aos contadores de desempenho na PMU através de software de monitorização do desempenho. Esta abordagem permite-lhe otimizar cargas de trabalho sensíveis ao desempenho, como cargas de trabalho de computação de elevado desempenho (HPC) ou de aprendizagem automática (ML), ajudando a identificar e resolver gargalos de desempenho nas suas aplicações.

Como funciona a PMU

A PMU é composta por um conjunto de contadores de hardware denominados contadores de monitorização do desempenho (PMCs). Estes contadores são registos específicos do modelo que contabilizam cada vez que ocorre um evento do processador de baixo nível, como uma previsão incorreta de ramificação ou uma falha de cache, na CPU. Pode ler e configurar PMCs na PMU usando software de monitorização do desempenho, como o Intel VTune Profiler.

Por predefinição, a PMU está desativada nas VMs. Para a ativar, especifique os tipos de eventos de CPU de baixo nível a acompanhar ativando um dos seguintes tipos de PMU:

  • Arquitetura (ARCHITECTURAL): pode medir os seguintes eventos de desempenho de arquitetura:

    • Branch instructions retired: o número de instruções de ramificação desativadas. Use este evento para medir a execução do código e identificar potenciais gargalos de desempenho.

    • Branch misses retired: o número de instruções de ramificação que foram previstas incorretamente, o que fez com que o processador parasse e rejeitasse as instruções obtidas. Se vir um número elevado para este evento, é provável que possa otimizar o desempenho da CPU.

    • Instruções desativadas: o número de instruções que a CPU processa com êxito. Use este evento para medir o débito de instruções da CPU.

    • Espaços de cima para baixo: o número de espaços disponíveis no pipeline de um processador que são usados para executar instruções em simultâneo. Use este evento para compreender a eficiência com que o seu código está a usar os recursos do processador.

    • Ciclos principais não interrompidos: o número de ciclos principais quando a thread não é interrompida, por exemplo, devido à gestão de energia ou a interrupções. Use este evento para avaliar a utilização geral do processador.

    • Ciclos de referência não interrompidos: o número de ciclos de referência quando o núcleo não é interrompido, por exemplo, quando obtém dados ou instruções. O núcleo é parado quando executa as instruções HLT ou MWAIT. Os ciclos de referência funcionam a uma frequência fixa, o que fornece uma referência de tempo estável, mesmo quando a velocidade do processador muda para preservar energia. Use este evento para medir o tempo gasto numa tarefa e identificar gargalos de desempenho no seu código.

  • Padrão (STANDARD): pode medir todos os eventos do tipo PMU arquitetónico e quaisquer eventos locais no núcleo da CPU, incluindo eventos de cache de nível 2 (L2).

  • Melhorado (ENHANCED): pode medir todos os eventos do tipo PMU padrão, quaisquer eventos locais fora do núcleo da CPU, incluindo eventos de cache de nível 3 (L3).

Depois de ativar a PMU numa VM, esta é executada em segundo plano, monitorizando continuamente os eventos de desempenho através de PMCs. Opcionalmente, pode configurar limites para PMCs específicos através do seu software de monitorização do desempenho preferido. Se um PMC exceder o respetivo limiar designado, a PMU notifica o software.

Limitações

A PMU tem as seguintes limitações:

  • Só pode ativar a PMU nas seguintes plataformas de CPU:

    Plataforma da CPU Séries de máquinas suportadas Eventos de desempenho suportados
    Processador Google Axion™ C4A Guia da PMU Arm Neoverse V2
    Processador Intel Xeon Scalable (Emerald Rapids) de 5.ª geração C4 emeraldrapids_core.json
  • Só pode ativar o tipo de PMU melhorado em VMs que usam um tipo de máquina C4 com 96 ou 192 vCPUs.

Preços

Não existem custos associados à ativação ou desativação da PMU numa VM.

O que se segue?