A revolução dos formatos numéricos

A inteligência artificial impulsionou uma explosão sem precedentes no design de novos formatos numéricos — as formas pelas quais os números são representados digitalmente no hardware do computador. A necessidade de treinar e executar neural networks cada vez maiores com custo reduzido levou os engenheiros a explorar todas as formas possíveis de reduzir o número de bits usados para representar dados, economizando tempo de computação e consumo de energia no processo. Formatos como bfloat16 do Google, TensorFloat-32 do NVIDIA, e várias representações de 8 bits e até 4 bits tornaram-se ferramentas padrão no arsenal do engenheiro de AI.

Esses formatos de precisão reduzida funcionam para AI porque neural networks são notavelmente tolerantes à imprecisão numérica. Um pequeno erro de arredondamento no valor de ativação de um neurônio é absorvido pela média estatística que ocorre entre milhões de parâmetros. O treinamento pode exigir marginalmente mais iterações para convergir, mas a velocidade obtida ao processar números menores supera vastamente o custo de computações ligeiramente mais ruidosas.

O sucesso desses formatos otimizados para AI criou uma tentação natural: se a precisão reduzida funciona para neural networks, por que não aplicar a mesma abordagem à computação científica? A resposta, como explica Laslo Hunhold em uma entrevista detalhada com IEEE Spectrum, é que a matemática não se transfere.

Por que a computação científica é diferente?

A computação científica abrange física computacional, dinâmica de fluidos, simulações de engenharia estrutural, modelagem climática, dinâmica molecular, e dezenas de outros campos onde computadores resolvem sistemas de equações que descrevem fenômenos físicos. Essas simulações diferem dos cálculos de neural networks de uma forma fundamental: requerem precisão numérica, não apenas correlação estatística.

Quando um físico simula o fluxo turbulento de ar sobre uma asa, cada célula computacional deve representar com precisão valores de pressão, velocidade e temperatura que interagem com células vizinhas através de leis físicas bem definidas. Um pequeno erro numérico em uma célula não é compensado — ele se propaga pela simulação, potencialmente crescendo exponencialmente através de um fenômeno chamado instabilidade numérica. O que começa como um erro de arredondamento imperceptível pode resultar em uma simulação que produz resultados fisicamente sem sentido.

Essa sensibilidade à precisão não é uma falha do software de simulação. Ela reflete a natureza matemática das equações diferenciais parciais sendo resolvidas. Muitas dessas equações são inerentemente caóticas, o que significa que pequenas perturbações nas condições iniciais ou cálculos intermediários levam a resultados dramaticamente diferentes. A disciplina inteira da análise numérica existe para entender e controlar esses erros, e décadas de pesquisa estabeleceram que certos requisitos mínimos de precisão devem ser atendidos para que as simulações produzam resultados confiáveis.

O desafio dos formatos personalizados

Hunhold, que recentemente se juntou ao Openchip, sediado em Barcelona, como engenheiro de AI, vem trabalhando para desenvolver formatos numéricos especificamente projetados para computação científica — não tomados emprestados de AI. Sua abordagem reconhece que os requisitos de precisão de simulações científicas são qualitativamente diferentes dos de neural networks, e que simplesmente aplicar formatos de AI a problemas científicos não é um atalho viável.

O desafio é multifacetado. A computação científica requer maior precisão em certas partes do intervalo numérico e pode tolerar menor precisão em outras. A distribuição de valores em uma simulação de física não se parece em nada com a distribuição de ativações em uma neural network. Um formato otimizado para uma aplicação pode ser ativamente prejudicial para a outra.

  • Formatos numéricos de AI reduzem a precisão para acelerar a computação, confiando na tolerância de neural networks a erros de arredondamento
  • Simulações científicas requerem precisão numérica — pequenos erros podem resultar em falhas catastróficas
  • Formatos de AI de precisão reduzida podem produzir resultados fisicamente sem sentido em simulações de engenharia
  • Pesquisadores estão desenvolvendo formatos numéricos personalizados projetados especificamente para computação científica
  • As distribuições de valores em simulações de física diferem fundamentalmente das ativações de neural networks

A dimensão do hardware

O problema se estende além do software para o design de hardware. Aceleradores de AI modernos — GPUs e chips personalizados de NVIDIA, Google, AMD e startups — estão cada vez mais otimizados para os formatos numéricos específicos usados em machine learning. Suas unidades aritméticas são projetadas para processar bfloat16, FP8, e outros formatos nativos de AI no máximo throughput, enquanto o desempenho tradicional de ponto flutuante de precisão dupla estagnou ou até declinou em termos relativos.

Essa tendência de hardware cria um problema prático para a computação científica. Se os fabricantes de chips continuarem priorizando formatos específicos de AI, cientistas e engenheiros podem descobrir que o hardware de computação mais recente e poderoso é inadequado para suas cargas de trabalho. Um chip que pode executar trilhões de operações de AI de baixa precisão por segundo pode lutar com a aritmética de precisão dupla que um modelo climático ou análise estrutural requer.

O trabalho de Hunhold em formatos científicos personalizados é parcialmente motivado por essa realidade de hardware. Se a computação científica pode identificar formatos numéricos que alcançam precisão aceitável com menos bits do que a precisão dupla tradicional, esses formatos poderiam ser implementados em hardware futuro junto com formatos de AI, garantindo que as cargas de trabalho científicas se beneficiem dos mesmos avanços de fabricação que estão impulsionando o desempenho dos chips de AI.

As consequências de estar errado

As consequências de aplicar precisão numérica inadequada à computação científica não são abstratas. As simulações de engenharia informam o design de estruturas de aeronaves, sistemas de contenção de reatores nucleares, carregamentos de pontes, e interações moleculares farmacêuticas. Uma simulação que retorna um resultado aparentemente plausível mas numericamente incorreto pode levar a designs que falham catastroficamente no mundo real.

O sucesso extraordinário da indústria de AI com computação de precisão reduzida é uma realização genuína, mas vem com uma ressalva específica do domínio que a comunidade de computação científica é ansiosa por enfatizar: o que funciona para reconhecimento de padrões não funciona automaticamente para física. Os números devem estar certos, e certo significa algo muito diferente quando vidas dependem da precisão da simulação.

Este artigo é baseado em reportagens de IEEE Spectrum. Leia o artigo original.