Linux pode ganhar 50 novos indicadores para monitorar memória, rede e CPU Proposta apresentada por desenvolvedor do Google amplia a ferramenta perf com métricas de memória, tráfego de rede e atividade do escalonador, facilitando diagnósticos em sistemas Linux.
Linux prepara 50 novos indicadores de desempenho
Em 13 de novembro de 2026, Ian Rogers, desenvolvedor do Google, publicou na Linux Kernel Mailing List (LKML) uma segunda revisão de um conjunto de quatro patches. O objetivo do projeto é adicionar 50 novos eventos de monitoramento à ferramenta perf.
As métricas propostas são divididas em três categorias principais: 26 indicadores relacionados ao uso de memória, 16 destinados ao tráfego de rede e 8 voltados para o escalonador de tarefas da CPU. A implementação não cria novos sensores no hardware. O trabalho utiliza dados que o próprio kernel já disponibiliza por meio do sistema de arquivos virtual /proc e os integra à infraestrutura tool_pmu do perf.
Caso os patches sejam aceitos e integrados ao código principal do Linux, administradores e desenvolvedores poderão consultar essas estatísticas usando comandos unificados e combiná-las diretamente com outras métricas de desempenho. A proposta, no entanto, ainda está em fase de revisão pela comunidade e não foi incorporada a uma versão estável.
O que é a ferramenta perf e para que ela serve?

O perf é um utilitário oficial do Linux especializado em análise e diagnóstico de desempenho. Ele funciona lendo contadores físicos presentes nos processadores e métricas lógicas geradas pelo próprio sistema operacional.
Tradicionalmente, a ferramenta ajuda a descobrir gargalos de velocidade, falhas de cache do processador e ciclos de CPU desperdiçados. O que a nova proposta faz é expandir o escopo do perf. Em vez de depender de utilitários separados para observar a memória ou a rede, o usuário poderá usar o mesmo ambiente de análise para cruzar os dados da aplicação.
Novos indicadores poderão detalhar o consumo de memória
O primeiro patch da série é o mais extenso e adiciona 26 eventos com o prefixo memory_. Esses indicadores buscam dados nos arquivos /proc/<pid>/statm e /proc/<pid>/smaps_rollup, oferecendo visões detalhadas sobre o espaço ocupado por um processo.
Entre os principais eventos propostos, destacam-se:
- memory_rss: a quantidade de memória residente utilizada pelo processo.
- memory_pss: a memória proporcional, que divide o peso das páginas compartilhadas entre os processos que as utilizam.
- memory_uss: a memória exclusiva, contabilizando apenas os dados que pertencem estritamente àquele processo.
- memory_swap: a quantidade de memória que o sistema precisou transferir para o disco.
A proposta traz um refinamento técnico importante para lidar com processos que possuem múltiplas threads, evitando que a memória de um mesmo programa seja somada repetidas vezes. Além disso, existe um mecanismo de segurança para processos que terminam antes que a ferramenta conclua a leitura: o sistema utiliza uma chamada de retorno baseada em ru_maxrss. Contudo, o ru_maxrss registra o pico de uso de memória daquela aplicação, não necessariamente o consumo no exato instante de seu encerramento.
Perf também poderá acompanhar estatísticas de rede
O segundo patch introduz 16 eventos de rede baseados nos dados do arquivo /proc/net/dev. Eles são identificados pelos prefixos net_rx_ (recepção) e net_tx_ (transmissão).
Os indicadores incluem volume de bytes traficados, quantidade de pacotes recebidos e enviados, pacotes descartados e registros de erros nas interfaces de rede.
Existe uma limitação fundamental nesta etapa: os eventos de rede operam exclusivamente em modo de sistema. O desenvolvedor bloqueou intencionalmente o uso desses indicadores por processo ou por cgroup. Como o sistema de arquivos /proc não atribui o tráfego de uma interface de rede a um processo individual de forma direta nesse contexto, o perf exibirá a estatística global da máquina durante o monitoramento, e não o consumo específico de um único aplicativo.
Novas métricas mostram como a CPU distribui tarefas
O terceiro patch adiciona oito indicadores que monitoram o escalonador de tarefas, o componente do kernel responsável por decidir qual processo ganha acesso ao processador. Os eventos carregam o prefixo schedstat_ e retiram as informações de /proc/schedstat.
As métricas propostas incluem:
- schedstat_runtime: tempo acumulado de execução na CPU.
- schedstat_wait: tempo que o processo passou esperando na fila de execução.
- schedstat_timeslices: quantidade de fatias de tempo atribuídas às tarefas.
- schedstat_yield: chamadas nas quais o processo abriu mão voluntariamente do processador.
Esses eventos não medem a temperatura ou a voltagem do processador. Eles analisam a eficiência da fila de trabalho do sistema operacional. Por serem vinculados à arquitetura de processamento, podem ser consultados individualmente por núcleo lógico.
O que mudou na segunda revisão dos patches?
A ideia de incluir esses indicadores começou em janeiro de 2026. A segunda revisão, apresentada dez meses depois, corrige comportamentos que poderiam induzir o administrador ao erro.
A mudança mais perceptível ocorreu na leitura da rede. Na primeira versão, o perf mostrava o volume total de dados transferidos desde que o computador havia sido ligado. A segunda revisão passou a calcular a diferença exata do tráfego registrado apenas durante o intervalo em que a ferramenta esteve ativa.
Outros ajustes incluem melhorias nas conversões de unidades de memória, proteção contra falhas na reutilização de identificadores de processos (PIDs) e suporte inédito às estatísticas do escalonador. Para garantir a estabilidade do código, o quarto patch do projeto adicionou diversos testes automatizados para validar a coleta simultânea de métricas globais e individuais.
Como os novos indicadores poderão ajudar administradores Linux?
A integração desses 50 indicadores facilita a vida de quem precisa investigar lentidões ou comportamentos anômalos em servidores e ambientes de desenvolvimento.
A documentação da proposta apresenta alguns comandos demonstrativos para ilustrar o potencial da ferramenta. (Vale notar que esses exemplos exigem a presença dos patches e não funcionarão em versões antigas do perf).
Para investigar o consumo de memória de uma aplicação específica, o administrador poderá usar:
ShellSessionperf stat -e memory_rss,memory_pss,memory_uss -p 1234 -- sleep 1Neste caso, a ferramenta monitorará o processo de número 1234 durante um segundo, detalhando a memória isolada e a memória compartilhada.
Para ter um panorama rápido do volume de rede global do servidor, o comando seria:
ShellSessionperf stat -a -e net_rx_bytes,net_rx_packets,net_tx_bytes,net_tx_packets -- sleep 1E para analisar as esperas na fila do processador, o uso envolveria:
ShellSessionperf stat -a -e schedstat_runtime,schedstat_wait,schedstat_timeslices -- sleep 1Os 50 indicadores já estão disponíveis?
Não. A publicação de 13 de novembro de 2026 é a segunda revisão técnica (v2) submetida para avaliação dos mantenedores do kernel. A proposta precisa passar por testes comunitários, aprovação de código e integração à árvore de desenvolvimento do Linux (como o ramo perf-tools-next) antes de chegar aos usuários finais em uma futura atualização estável.
Entenda sem termos técnicos: por que reunir várias métricas em uma única ferramenta?
Imagine tentar consertar o motor de um carro enquanto os medidores de combustível, velocidade e temperatura ficam em telas completamente separadas, que atualizam em tempos diferentes. É assim que o monitoramento do Linux funciona hoje para certas tarefas. O usuário precisa de um aplicativo para ver a memória, outro para ver a internet e outro para ver a temperatura do processador.
O que a proposta do Google faz é criar um painel central. Ela pega as informações que já existiam espalhadas pelo sistema e as conecta a uma ferramenta clássica de diagnóstico (o perf). Ao fazer isso, fica muito mais fácil comparar se um pico de consumo de memória aconteceu exatamente no mesmo milissegundo em que a rede ficou sobrecarregada, acelerando a descoberta da causa do problema.