Antes da janela de mesclagem do Linux 6.2 terminar neste fim de semana, um segundo lote das alterações do subsistema perf foi enviado para esta próxima versão do kernel Linux. Notável entre as várias adições ao poderoso código perf do kernel Linux é lidar com vários novos eventos de monitoramento de desempenho com novos processadores AMD Zen 4. Então, o kernel Linux 6.2 adiciona dados de utilização do pipeline AMD Zen 4 para ajudar a encontrar gargalos de desempenho.
Com a coleção atual de correções e melhorias de ferramentas perf enviadas para Linus Torvalds para fusão, as adições AMD Zen 4 valem a pena mencionar. Uma variedade de novos contadores de monitor de desempenho principal, contadores de monitor de desempenho de cache L3 e eventos de contador de monitor de desempenho de malha.
Uma grande variedade de métricas de eventos em torno de expedição, execução e desativação, previsão de ramificação, atividade de cache L1/L2 e atividade TLB são expostas de maneira compatível para processadores Zen 4.
Além disso, existem novas medições de desempenho que agora podem ser aproveitadas pelo utilitário perf do Linux com processadores Zen 4 encabeçados por agora terem dados de utilização de pipeline.
Entre as muitas métricas de utilização de pipeline que são novas com as CPUs Zen 4 incluem detalhes sobre especulações ruins e previsões erradas, largura de banda vinculada ao front-end, back-end vinculado pelo subsistema de memória ou CPU,
As métricas de utilização do pipeline Zen 4 permitem analisar a atividade em diferentes estágios do pipeline da CPU para determinar gargalos de desempenho no código executado.
Isso deve ajudar muito os desenvolvedores a descobrir quaisquer deficiências em seu código e fazer otimizações de desempenho mais eficazes como resultado desses insights de hardware.
Linux 6.2 adiciona dados de utilização do pipeline AMD Zen 4 para ajudar a encontrar gargalos de desempenho
Esses novos contadores de desempenho com o Zen 4 já foram detalhados no manual de Referência de Programação de Processador (PPR) público da AMD, enquanto agora ele é fatiado em forma JSON para consumo pelas ferramentas perf do Linux.
É lamentável que essas adições perf não façam parte do kernel Linux há mais tempo. Isso poderia ajudar os desenvolvedores com acesso antecipado aos processadores das séries Ryzen 7000 e EPYC 9004. O objetivo é ajudar em seus perfis e otimizações. No entanto, pelo menos está a caminho agora com o Linux 6.2.
Algumas adições do Zen 4 chegaram mais cedo, como a amostragem com base em instrução (IBS) do Zen 4 com Linux 6.0, enquanto essas adições JSON estão chegando após o lançamento.
As ferramentas de perf de hoje também têm várias correções. Além disso, relatórios de contenção de bloqueio de perf, métricas/eventos atualizados para várias gerações de CPUs Intel e outras atualizações.