FERRAMENTAS LINUX: O LLVM mescla o Machine Fusion Splitter para redução de ~ 32% em falhas de TLB

terça-feira, 1 de setembro de 2020

O LLVM mescla o Machine Fusion Splitter para redução de ~ 32% em falhas de TLB




Confira !!



No início de agosto, relatamos que os engenheiros do Google propuseram o Machine Fusion Splitter para o LLVM como um meio de tornar binários até um pouco mais rápidos graças a este passo de otimização de geração de código para dividir funções de código em partes quentes e frias. Esse trabalho agora foi incorporado ao LLVM 12.0 com resultados muito promissores.

O LLVM Machine Function Splitter foi fundido antes do fim de semana na base de código Git para o que será o LLVM 12.0 no início do próximo ano. O uso dessa passagem de otimização garante que os caminhos de código quente sejam carregados no cache da CPU, enquanto mantém os caminhos de código frio em prioridade mais baixa para o cache.

Os engenheiros do Google encontraram uma melhoria de 2,33% no tempo de execução com uma redução de aproximadamente 32% nas falhas de iTLB e sTLB. Os erros de L1 iCache foram cometidos em 9,5%, enquanto os erros de instrução L2 caíram em 20%. Para SPECInt, o desempenho do Clang melhorou 0,6 ~ 1,6%.

O código foi mesclado O divisor de função de máquina depende das informações de perfil para poder avaliar os caminhos quentes / frios do programa.

Fonte

Até a próxima !!

Nenhum comentário:

Postar um comentário