FERRAMENTAS LINUX: A otimização da Intel em relação à liberação de TLB em lote para os fólios parece ótima

sexta-feira, 20 de janeiro de 2023

A otimização da Intel em relação à liberação de TLB em lote para os fólios parece ótima

 

Um patch trabalhado por um engenheiro da Intel para liberação de TLB em lote para migração de página com fólios está mostrando alguns resultados promissores e atualmente trabalhando para o kernel da linha principal.

A otimização do engenheiro da Intel, Huang Ying, foi adotada pelo ramo "mm-unstable" de Andrew Morton. Se tudo correr bem, esta otimização pode ser mesclada para o próximo ciclo do kernel Linux v6.3. O patch resume bem o trabalho:

A liberação de TLB custará alguns ciclos de CPU durante a migração do fólio em algumas situações. Por exemplo, ao migrar um fólio de um processo com vários encadeamentos ativos executados em várias CPUs. Depois de agrupar o _unmap e o _move em migration_pages(), a liberação do TLB pode ser agrupada facilmente com o mecanismo de lotes de liberação do TLB existente. Este patch implementa isso.

Usamos o caso de teste a seguir para testar o patch.

Em um servidor Intel de 2 soquetes,

- Execute o benchmark de acesso à memória pmbench

- Execute `migratepages` para migrar páginas do pmbench entre o nó 0 e o nó 1 para frente e para trás.

Com o patch, o TLB flushing IPI reduz 99,1% durante o teste e o número de páginas migradas com sucesso por segundo aumenta 291,7%. 
NOTA: [A liberação de TLB é feita em lote apenas para fólios normais, não para fólios THP. Porque a sobrecarga de liberação de TLB para fólios THP é muito menor do que para fólios normais (cerca de 1/512 na plataforma x86).

A Intel continua fazendo um ótimo trabalho upstream do kernel, além de apenas habilitar oportunamente seu novo hardware, mas também foi  otimizando incansavelmente o kernel do Linux para um maior desempenho e eficiência.

A parte emocionante dos comentários do patch...








Fonte

Até a próxima !!


Nenhum comentário:

Postar um comentário