En 1994 el profesor Thomas Nicely de la Universidad de Lynchburg descubrió un error en la unidad de coma flotante de algunos de los procesadores Intel Pentium. Nicely observó que algunas operaciones de división devolvían siempre un valor erróneo por exceso. Otras personas confirmaron rápidamente estos errores en las divisiones. Este fallo de diseño se hizo notorio muy rápidamente y se le dio el nombre de error FDIV del Pentium (FDIV es la instrucción de división en coma flotante de los microprocesadores x86). Otros pusieron de relieve problemas de división cuyo resultado devuelto por el Pentium tenía un error de hasta 61 unidades por millón.
Intel negó inicialmente la existencia del problema. Más tarde, Intel remarcó la insignificancia de los defectos de sus microprocesadores, queriendo tranquilizar a los usuarios. Intel se negó a sustituir sistemáticamente los microprocesadores defectuosos; sin embargo, si una persona podía demostrar que había sido afectada por el error, entonces Intel procedería a cambiar su procesador. Aunque evaluaciones efectuadas por organismos independientes mostraron la poca importancia de las consecuencias de error y que el efecto era desdeñable en la mayoría de las ocasiones, se provocó una situación en la que los usuarios de Intel Pentium demandaban el reemplazo de los procesadores defectuosos. Empresas como IBM se unieron a la denuncia. Finalmente, Intel se vio forzada a aceptar sustituir todos los microprocesadores defectuosos, lo que le representó un coste enorme.
Con un número estimado de entre 3.000.000 y 5.000.000 de chips defectuosos en circulación, el error cuesta finalmente a Intel unos 475.000.000 dólares.
La página de Intel en la que está toda la información sobre los procesadores afectados, cómo saber si tu procesador es uno de los afectados, o como proceder para solicitar el cambio, todavía sigue activa y es accesible en la siguiente dirección: http://www.intel.com/support/sp/mt/mt_win.htm.
Así que ya sabes, si todavía tienes un equipo con un procesador Pentium® a 60, 66, 75, 90 ó 100MHz, puedes reproducir este bug simplemente realizando la siguiente operación en la calculadora de Windows:
- 4195835.0/3145727.0 = 1.333 820 449 136 241 002 (Resultado correcto)
- 4195835.0/3145727.0 = 1.333 739 068 902 037 589 (Pentium con error)
1 comentario en «Pentium FDIV bug (Error de división en coma flotante)»