the Pentium FDIV bug

folclore

programaçãocultura de operações

Uma falha de 1994 no Intel Pentium que devolvia respostas ligeiramente erradas em certas divisões de ponto flutuante.

O matemático Thomas Nicely detectou o erro numa tabela de consulta, e a oferta inicial da Intel de trocar chips só para quem provasse estar afetado causou um desastre de imagem. A Intel voltou atrás, registrou uma despesa de cerca de 475 milhões de dólares, e o episódio redefiniu como a indústria lida com erratas de hardware.

Em 1994 um matemático descobriu que a divisão de ponto flutuante do Pentium devolvia respostas ligeiramente erradas para um pequeno conjunto de entradas, porque uma tabela de consulta no circuito de divisão estava sem algumas entradas. O erro aparecia por volta do quarto ou quinto dígito significativo e afetava cerca de uma divisão em nove bilhões para entradas aleatórias.

A resposta inicial da Intel é a parte que merece estudo. A empresa argumentou, corretamente, que o erro era estatisticamente desprezível para usuários comuns, e ofereceu substituição apenas a quem demonstrasse precisar daquela precisão. Essa posição era matematicamente defensável e avaliou a situação completamente mal, porque os clientes não estavam avaliando uma taxa de erro, estavam descobrindo que a aritmética podia estar errada.

A escalada forçou um recall completo de cerca de 475 milhões de dólares, e o efeito duradouro foi sobre a cultura de divulgação, e não sobre projeto de chips. Erratas de hardware passaram a ser documentadas publicamente em vez de circularem discretamente, e o incidente é hoje o exemplo padrão de uma resposta tecnicamente correta fracassando catastroficamente como comunicação. A lição de engenharia é menor e ainda assim real: taxa de erro é propriedade de uma distribuição, e nenhum usuário vive uma distribuição.

Também conhecido como: FDIV bug, Pentium bug, Intel FDIV

Fontes

  • Nicely (1994); Intel Q4 1994 charge (~US$475M)

Todos os verbetes do glossário