FERRAMENTAS LINUX: O LLVM Clang 15 permite instruções de raiz quadrada mais rápidas para o AMD Zen

sábado, 5 de fevereiro de 2022

O LLVM Clang 15 permite instruções de raiz quadrada mais rápidas para o AMD Zen

 Confira !!

Como parte de um esforço para atualizar o manuseio "-mtune" do LLVM Clang para atender aos processadores mais novos, os processadores AMD Zen com LLVM/Clang 15 ainda este ano poderão desfrutar de cálculos de raiz quadrada mais rápidos e precisos com ajuste para usar SQRTSS/SQRTPS instruções.

Foi fundido ontem com a linha principal para LLVM/Clang 15 (não deve ser confundido com o LLVM/Clang 14 ramificado que será lançado no próximo mês) é o rápido SQRTSS (Compute Square Root of Scalar Single-Precision Value) / SQRTPS (Square Root of Single-Precision Floating- Valores de ponto) para os núcleos do processador AMD Zen. Com o Zen 1 e mais recente, essas instruções são rápidas o suficiente e valem a pena do que o caminho de código existente, além de serem mais precisas.


Esse ajuste para o AMD Zen vem enquanto no lado da Intel eles já habilitaram o TuningFastScalarFSQRT voltando para o Sandy Bridge e o TuningFastVectorFSQRT está em vigor desde o Skylake. Embora essa alteração de ajuste de LLVM afete todas as CPUs Zen desde o Zen 1, a alteração de LLVM só está acontecendo agora em 2022.

Esse ajuste de instrução de raiz quadrada para AMD Zen surgiu como parte de uma discussão mais ampla para melhorar o comportamento genérico -mtune para mais CPUs modernas, semelhantes ao padrão -mtune do GCC, atendendo a Haswell. Conforme observado nessa discussão, " os modelos de programação znver1/znver2 são, bem, deixam muito a desejar ".

O Zen 1 já tem meia década, enquanto essa mudança para LLVM/Clang 15 será lançada como estável por volta de setembro de 2022. Infelizmente, essa mudança é apenas mais um exemplo de otimizações de software da AMD chegando atrasadas (e muitas vezes deixadas para partes independentes / a comunidade de código aberto), especialmente no lado do compilador, enquanto a Intel geralmente está muito cedo em sua nova família de CPUs visando e garantindo que eles sejam bem otimizados com tabelas de custos precisas, capazes de usar novas instruções, etc.



Este ajuste do SQRTSS/SQRTPS para o Zen é a primeira atividade específica do AMD Zen para LLVM desde setembro passado. Esperamos ver mais ajustes do compilador de código aberto da AMD acontecerem este ano - ainda não vimos o znver4 ser introduzido enquanto a Intel iniciou sua colcha de retalhos do compilador Alder Lake e Sapphire Rapids em meados de 2020.






Fonte

Até a próxima !!

Nenhum comentário:

Postar um comentário