A Nvidia está empregando emulação de software para melhorar o desempenho da computação de ponto flutuante de precisão dupla (FP64) em seus aceleradores de IA para computação de alto desempenho (HPC) e aplicações científicas, de acordo com O Registro. Essa estratégia surge no momento em que a empresa revela suas GPUs Rubin, que oferecem 33 teraFLOPS de desempenho máximo do FP64, uma redução de 1 teraFLOP em relação à GPU H100. As bibliotecas CUDA da Nvidia podem atingir até 200 teraFLOPS de desempenho de matriz FP64 por meio de emulação de software, representando um aumento de 4,4x em relação às capacidades de hardware dos aceleradores Blackwell. Dan Ernst, diretor sênior de produtos de supercomputação da Nvidia, afirmou que a precisão da emulação corresponde ou excede a do hardware de núcleo tensor. No entanto, Nicholas Malaya, bolsista da AMD, questionou a eficácia do FP64 emulado em simulações físicas científicas em comparação com benchmarks. O FP64 continua crítico para a computação científica devido à sua faixa dinâmica, capaz de expressar mais de 18,44 quintilhões de valores únicos, em contraste com os 256 valores únicos do FP8 usados em modelos de IA. As simulações de HPC, diferentemente das cargas de trabalho de IA, exigem alta precisão para evitar a propagação de erros que podem levar à instabilidade do sistema, de acordo com Malaya. O conceito de usar tipos de dados de baixa precisão para emular o FP64 remonta a meados do século XX. No início de 2024, pesquisadores dos institutos de tecnologia de Tóquio e Shibaura publicaram um artigo demonstrando que as operações da matriz FP64 poderiam ser decompostas em múltiplas operações INT8 nos núcleos tensores da Nvidia, alcançando desempenho superior ao nativo. Este método, conhecido como esquema Ozaki, forma a base para as bibliotecas de emulação FP64 da Nvidia, lançadas no final do ano passado. Ernst confirmou que a computação emulada mantém a precisão do FP64, diferindo apenas no método de execução do hardware. As GPUs modernas apresentam núcleos tensores de baixa precisão, como os do Rubin, que oferecem 35 petaFLOPS de computação FP4 densa. Esses núcleos são 1.000 vezes mais rápidos que os componentes específicos do FP64. Ernst explicou que a eficiência desses núcleos de baixa precisão levou a explorar seu uso para emulação FP64, alinhando-se com a tendência histórica na supercomputação de aproveitar o hardware disponível. A AMD expressou reservas quanto à precisão da emulação FP64. Malaya observou que a abordagem funciona bem para sistemas numéricos bem condicionados, como benchmarks High Performance Linpack (HPL), mas pode falhar em sistemas menos condicionados encontrados em ciência de materiais ou códigos de combustão. Ele também destacou que os algoritmos da Nvidia para emulação FP64 não são totalmente compatíveis com IEEE, não levando em conta nuances como zeros positivos versus negativos ou erros “não é um número”. Essas discrepâncias podem levar a pequenos erros que se propagam e afetam os resultados finais. Malaya acrescentou que o esquema Ozaki duplica aproximadamente o consumo de memória para matrizes FP64. O próximo MI430X da AMD melhorará especificamente o desempenho de hardware de precisão dupla e simples usando sua arquitetura de chiplet. Ernst reconheceu algumas limitações, mas afirmou que questões como zeros positivos/negativos não são críticas para a maioria dos profissionais de HPC. A Nvidia desenvolveu algoritmos complementares para detectar e mitigar problemas como não-números e números infinitos. Ele afirmou que o aumento da sobrecarga de memória é relativo à operação, não ao aplicativo inteiro, com matrizes típicas sendo de alguns gigabytes. Ernst argumentou que os problemas de conformidade com o IEEE muitas vezes não surgem em casos de multiplicação de matrizes, especialmente em operações DGEMM. A emulação beneficia principalmente um subconjunto de aplicativos HPC que dependem de operações de multiplicação de matrizes gerais densas (DGEMM). Malaya estimou que 60% a 70% das cargas de trabalho de HPC, especialmente aquelas que dependem do vetor FMA, veem pouco ou nenhum benefício com a emulação. Para cargas de trabalho com muitos vetores, como dinâmica de fluidos computacional, as GPUs Rubin da Nvidia devem usar aceleradores vetoriais FP64 mais lentos em seus núcleos CUDA. Ernst respondeu que os FLOPS teóricos nem sempre se traduzem em desempenho utilizável, especialmente quando a largura de banda da memória atua como um gargalo. Espera-se que Rubin, com 22 TB/s de memória HBM4, ofereça maior desempenho no mundo real nessas cargas de trabalho, apesar do desempenho mais lento do vetor FP64. A viabilidade da emulação FP64 será testada à medida que novos supercomputadores incorporando as GPUs Blackwell e Rubin da Nvidia se tornarem operacionais. Os algoritmos podem melhorar com o tempo devido à sua natureza baseada em software. Malaya indicou que a AMD também está explorando a emulação FP64 em chips como o MI355X por meio de sinalizadores de software. Ele enfatizou que a conformidade com o IEEE validaria a abordagem, garantindo a consistência dos resultados com silício dedicado. Malaya sugeriu que a comunidade estabelecesse um conjunto de aplicativos para avaliar a confiabilidade da emulação em diferentes casos de uso.




