Patch pequeno, grandes resultados (2)

Parece que tá virando moda essa história de escrever uma linha de código e obter um excelente rendimento do kernel Linux. Das duas, uma: ou ele é muito mal escrito e o código bem feito impacta o desempenho final ou esses programadores tem os dedos mágicos.

Vejamos o caso de hoje.

A Intel adicionou um código kernel Linux que otimiza o gerenciamento de memória e o uso de grandes páginas (THP), introduzindo um novo comportamento para o mapeamento de memória anônima, melhorando o desempenho em determinadas cargas de trabalho.

Um teste automatizado da Intel mostrou um aumento significativo de desempenho (3888,9%) em um caso de teste específico, após a aplicação do patch que alinha os mapeamentos de memória anônima aos limites de PMD.

A alteração introduziu regressões em algumas cargas de trabalho, como o benchmark cactusBSSN, que apresentou uma desaceleração de até 600%, causada pela fragmentação de grandes áreas de memória em áreas menores alinhadas ao limite PMD, o que resulta em um maior número de falhas de cache e TLB.

A solução proposta é modificar a condição de alinhamento para que o tamanho do mapeamento seja um múltiplo do tamanho do PMD, em vez de apenas maior ou igual, permitindo que mapeamentos menores se juntem naturalmente, evitando a fragmentação e as consequentes regressões de desempenho.

Entenderam? Eu, não. Mas deixemos os tecnicismos de lado e vamos ao que interessa: um aumento - por qualquer meio - de 3888,9% é muita coisa! Muito mais que os modestos 2,6% do Pinguim Rei com seu patch.

image

Isso mostra que há muito espaço para melhorias, sem necessariamente desembocar em trabalhos complexos. Basta botar a cuca pra pensar, entender os conceitos envolvidos no problema e testar as soluções possíveis.

Como dizia Sherlock Holmes, “a solução para um crime é a possibilidade mais simples”…

Fonte: link no texto

2 curtidas

Rapaz, agora eu quero saber tmb, quando a Canonical também vai implementar esse 2 patchs no Linux deles?

2 curtidas

Eu imagino que a Intel de duro para otimizar o Linux justamente porque ela tem um OS Linux(Clear Linux) com essa proposta de ser full otimizado para processadores Intel.
Então no Linux da Intel ou Clear Linux já deve estar sendo envido um update.

2 curtidas

Se for em versões de kernel específicas é do aguardar esse kernel chegar. Mas as vezes acontece deles lançarem alguma att que venha, né?

1 curtida

Eu não sei se o patch esta na RC6 ou se vai estar na próxima RC1.

2 curtidas