Emulando a instrução FMAdd: Um mergulho profundo em floats de 32 bits

2025-01-02

Esta postagem aprofunda a emulação da instrução FMAdd (fused multiply-add) em hardware sem suporte nativo, focando especificamente em uma implementação SIMD de ponto flutuante de 32 bits. Ela explica a operação do FMAdd e como evitar erros de arredondamento duplo inerentes aos cálculos intermediários de ponto flutuante. O autor detalha uma técnica inteligente usando 'arredondamento para ímpar' e a precisão extra de floats de dupla precisão para eliminar erros de arredondamento, alcançando resultados precisos do FMAdd. A postagem também abrange brevemente o cálculo de resultados de adição precisos e termos de erro, prometendo um acompanhamento sobre o tratamento de floats de 64 bits.

Leia mais