Alguém moveu três linhas de código no Linux 7.2 e obteve um aumento de 5% na velocidade de armazenamento

Resumo

  • O Linux 7.2 obtém aproximadamente 5% de IOPS em ext4/xfs graças a uma pequena alteração no código.

  • Ignorar um memset iomap desnecessário após uma iteração liberou largura de banda de gravação.

  • Mover três linhas para executar uma pós-iteração mostra que pequenos ajustes podem melhorar o desempenho.

Garantir que seu código tenha o melhor desempenho possível pode ser bastante assustador se você não souber o que recuar e por quanto. No entanto, às vezes as estrelas se alinham e você percebe uma solução realmente simples que aumenta drasticamente a velocidade do seu software. Seja como for, poucas pessoas podem afirmar ter acelerado um processo em 5% apenas movendo três trechos de código em algumas linhas, e foi exatamente isso que um engenheiro Linux conseguiu com a versão 7.2 do kernel.

No Linux 7.2, a velocidade de armazenamento foi aumentada em 5% com a movimentação de três linhas de código

Foi um movimento muito influente, mas mesmo assim um movimento

Como notado Forônioesta mudança foi escrita por Fengnan Chang e feita por Christian Brauner. Em Observações comprometedoras de Brownerele menciona o trabalho que Chang fez com o kernel e como ele ajudou a refinar o Linux 7.2:

Libere o memset iomap em iomap_iter() quando a iteração for concluída. Em cenários de alto IOPS (pesquisa NVMe randread 4k usando io_uring), o memset inútil desperdiçou largura de banda de gravação de memória; melhora o IOPS em cerca de 5% em ext4 e xfs.

Se você se sentir um pouco perdido depois disso, IOPS significa “operações de entrada/saída por segundo” e é basicamente a taxa na qual sua unidade de armazenamento envia e recebe dados. Uma aceleração de 5% do kernel Linux é realmente impressionante, para dizer o mínimo.

Curiosamente, essa não é a melhor parte desta história. A parte mais interessante é como Chan resolveu isso. Você pode ver as mudanças na imagem acima e dentro fazer registrosmas Chang basicamente pegou três linhas de código e as moveu para que fossem disparadas após a conclusão do processo, e não antes. Só assim, as taxas de IOPS aumentaram 5%. Eu gostaria que toda a minha depuração fosse tão simples, mas significativa.

O Linux 7.1 foi lançado no fim de semana passado, então essa correção não chegará aos nossos PCs até agosto de 2026, quando a versão 7.2 for lançada. Ainda assim, é bom ver que a versão 7.2 está ficando interessante tão rapidamente.

Linux 7.1 acabou de matar uma das maiores dores de cabeça na inicialização dupla

Agora você não tem desculpa para não experimentar o Linux.

Link da fonte