Kernel Linux

Kernel Linux 6.14 corrige regressão de desempenho de 2 anos no agendador

Descubra como o Linux 6.14 corrige uma regressão de desempenho de dois anos no agendador, que afetava negativamente o desempenho de workloads, incluindo o UnixBench.

Conheça mais novidades do Linux Kernel 6.14.

Uma correção de última hora foi submetida para o kernel Linux 6.14, com lançamento estável previsto para o próximo domingo. Essa correção reverte uma alteração feita no código do agendador do kernel há dois anos, que acabou prejudicando o desempenho de algumas workloads com um impacto significativo.

A alteração em questão, implementada há quase dois anos, visava reduzir o custo do tratamento sched_move_task ao usar a configuração CONFIG_SCHED_AUTOGROUP. Em um teste simples com um loop de um script bash que iniciava muitos comandos “sleep” como processos separados, essa alteração reduziu o tempo de execução em cerca de 57%.

No entanto, descobriu-se que essa tentativa de otimização estava prejudicando outras workloads do Linux. A correção submetida hoje reverte o código, eliminando uma regressão de desempenho de cerca de 30% no teste de spawn do UnixBench. Essa regressão foi relatada por um engenheiro da Amazon ao executar testes em sua nuvem AWS com o auto-grupo ativado. Outras workloads, além do UnixBench, também são afetadas.

Ingo Molnar enviou o pull request do agendador hoje com essa reversão e comentou:

“É verdade que é um pouco tarde no ciclo, e a regressão é antiga, mas o impacto no desempenho é substancial para as workloads afetadas, então não quis atrasar essa correção.”

A menos que haja alguma objeção por parte de Linus Torvalds, essa correção/reversão de regressão de desempenho deve ser mesclada no Linux 6.14 Git ainda hoje.

Links relevantes:

  • Para mais detalhes sobre a correção, consulte a mensagem na lista de discussão do kernel Linux.
Emanuel Negromonte Autor
Autor
Jornalista especialista em Linux a mais de 20 anos. Fundador do SempreUpdate e entusiasta do software livre.