FERRAMENTAS LINUX: O Glibc-HWCAPS chega para ajudar com as otimizações AMD Zen e outros bits de desempenho por CPU

terça-feira, 7 de julho de 2020

O Glibc-HWCAPS chega para ajudar com as otimizações AMD Zen e outros bits de desempenho por CPU


Confira !!



Os patches experimentais em discussão para a GNU C Library (glibc) facilitariam o carregamento dinâmico de bibliotecas otimizadas (objetos compartilhados) em sistemas, dependendo da CPU em uso e de seus recursos de hardware. Esse trabalho glibc-hwcaps deriva do trabalho desejado de poder aproveitar melhor as otimizações de desempenho do Linux em sistemas baseados no AMD Zen, mas os patches dos recursos de hardware podem ajudar qualquer família de microarquitetura de CPU a fornecer suporte otimizado com mais facilidade.

Este trabalho glibc-hwcaps enviado sob a bandeira "solicitação de comentários" no final de junho foi realizado por Florian Weimer, da Red Hat. Ele iniciou esta série de patches, decorrente do trabalho sobre o bug / problema relacionado ao fornecimento de suporte AMD Zen melhor otimizadoseguindo potencialmente as otimizações de Haswell em vez de um destino mais genérico. Antes dessa série de patches glibc-hwcaps, alguns meses atrás a AMD também estava envolvida nesse assunto .

Com os novos patches, um novo subdiretório chamado "glibc-hwcaps" pode ser usado com subdiretórios aninhados para conter implementações alternativas de bibliotecas. Esse subdiretório glibc-hwcaps pode ser usado em todos os subdiretórios do caminho de pesquisa da biblioteca. O comando ldconfig e o carregador dinâmico são executados para verificar corretamente os arquivos nos subdiretórios e adicioná-los ao cache com esse arquivo. O carregador dinâmico verificará a presença de arquivos especializados e, se houver suporte, usará a biblioteca alternativa.

Por fim, o glibc-hwcaps é o início da infraestrutura para poder enviar com mais facilidade bibliotecas otimizadas / objetos compartilhados, dependendo dos recursos de hardware. Isso está no nível da biblioteca para fornecer bibliotecas otimizadas para drop-in, ao contrário de FMV (Function Multi-Versioning) do GCC que, no momento da construção, está tentando fornecer funções otimizadas que são escolhidas no tempo de execução, dependendo da CPU hospedeiro.

Assim, empresas como os processadores AMD Zen poderiam aproveitar essa infraestrutura para implantar com mais facilidade versões otimizadas para Zen das bibliotecas de chaves em nome de um desempenho melhor. Essa infraestrutura comum também pode ser usada por outras CPUs x86_64, além de outras arquiteturas como POWER9 e s390x.

Mais detalhes através desta série de patches que, esperançosamente, chegará a bom termo em breve e é lamentável que tenha sido necessário até 2020 a implantação dessa infraestrutura.


Fonte

Até a próxima !!

Nenhum comentário:

Postar um comentário