FERRAMENTAS LINUX: A Arm está trabalhando na função multi-versioning para o GCC

quarta-feira, 20 de julho de 2022

A Arm está trabalhando na função multi-versioning para o GCC

 

Confira !!

Um recurso suportado pelo GNU Compiler Collection (GCC) que infelizmente não é usado com mais frequência é o FMV (função multi-versão) para suportar várias versões de uma função com a função selecionada selecionada com base no processador de destino em uso. O GCC FMV em x86_64 permite que diferentes funções sejam usadas, seja suportando SSE4.2, AVX ou até mesmo uma microarquitetura de CPU específica. A Arm está finalmente trabalhando no suporte a várias versões da função GCC para AArch64.

O multi-versioning da função GCC em x86_64 facilita para os desenvolvedores a criação de funções otimizadas para caminhos de código quente que em tempo de execução serão usados ​​por um processador compatível/relevante. Função Multi-Versioning permite o manuseio em tempo de execução do caminho de código mais apropriado para uma determinada função sem ter que recorrer ao envio de vários binários ou aumentar os requisitos básicos para o seu software. Mas atualmente o GCC FMV funciona apenas para x86/x86_64 e POWER. Além disso, isso atualmente só funciona com o front-end C++ do GCC.

O exemplo de sintaxe FMV da documentação do GCC sobre multiversão de função.


A Arm está procurando oferecer suporte ao GCC Function Multi-versioning para sua arquitetura de CPU e publicou recentemente uma especificação beta em torno dela.

A Arm anunciou o seu trabalho beta no suporte a FMV e atualmente está buscando feedback dos desenvolvedores sobre o tratamento proposto. Com o FMV on Arm, eles procuram permitir que os desenvolvedores usem uma versão alvo do Arm como uma das mudanças planejadas. No GitHub do Arm está a especificação proposta para o Arm FMV.







Fonte

Até a próxima !!


Nenhum comentário:

Postar um comentário