当前位置:网站首页>A math problem cost the chip giant $500million
A math problem cost the chip giant $500million
2022-07-27 05:09:00 【Leo.yuan】
1993 year ,CPU giant Intel Launched Pentium processor .
The new brand got rid of AMD Wait for the company to 286,386,486 And other digital series brands “ Plagiarism ”, Set up a new image as a leader .
Plus 90 In the early s, it was successfully promoted with a huge amount of money Intel Inside plan , Intel Successfully from a company that mainly supplies computer manufacturers , Turn into a brand that directly faces consumers .
I don't know which genius put Pentium Translated into domineering “ Galloping ”, It's really a brilliant stroke that amazes the audience .
New products , New brand ,Intel It can be said that he is in high spirits , Prepare to rule the world .
But what no one thought was , The one who has high hopes CPU There is a hidden one inside Bug!
1、
Bug The process of being discovered is also quite legendary , We have to start with a mathematical concept .
Back in Greek times , Euclid has proved that there are infinite primes , And the larger the number , The more sparsely primes are distributed .
The magic is , Although the distribution is very sparse , But as long as there is a prime number , You can find another one nearby , for example 41 and 43、101 and 103、10007 and 10009, The difference between them is 2.
Mathematicians give these differences as 2 The continuous prime of has a name : twin primes .
1919 year , Mathematician of Norway Viggo Brun Proved an interesting thing , Even if there are infinite twin prime numbers , Their reciprocal sum converges to a constant , This constant is called “ Brownian constant ”.

But what bothers mathematicians is : They don't know whether this Brownian constant is irrational .
With the advent of computers , Some people think of a trick : With the powerful computing power of computers , Violent solution .
The United States Lynchburg College Professor of Mathematics Thomas Nicely It's one of them , His laboratory happens to be equipped with a new Pentium computer .

compact Nicely To prevent miscalculation , Two algorithms are used to make double insurance , If the answer is different , There must be something wrong somewhere .
Nicely He began to calculate with hope , But the result disappointed him : The results of the two algorithms are really different !
After in-depth study ,Nicely Find out :824 633 702 441 and 824 633 702 443 These two twin prime numbers , They're the last decimal place of their number 10 Bit is miscalculated !
Nicely Replaced with an old one 486 Computer to calculate , The answer is right .
He uses Pentium computer to recalculate , Error recurrence .
What is wrong with your own program ? Or the computer ?
Nicely Start eliminating , Eliminate errors in your own code ,Borland Compiler error , Chipset error , It took a whole 4 months , Finally found Bug The origin of : Galloping CPU.
2、
1994 year 10 month 24 Number ,Nicely Phoning Intel Technical support department , Tell them the problem ,Intel Say there will be a reply in a few days , But I haven't heard from you since .
The reason is simple ,Intel As early as 1994 year 6 Month knew this problem : Floating point division (FDIV) error .
Galloping CPU Of FDIV Introduced a new 、 Fast implementation method , Used a 2048 Hardware lookup table for item , But because of an accident , Yes 5 Values are not set correctly , They should have been 2, But it was set to 0.
This Bug It will be triggered only when it is calculated with high accuracy , It's hard for ordinary users ,Byte The magazine estimated that , The probability of error is 90 1/100000000 .
Since the impact is small ,Intel The choice is : hide , Quietly repair , No details will be released .
After all, millions of pieces have been sold CPU 了 , Large scale recall costs too much .
It's not useless !
3、
There is no reply Nicely I'm upset ,10 month 30 Number , He began to give some IT Famous people and magazines send emails , Include Byte The magazine ,PC Week,InfoWorld,PC Magazine.

This matter quickly ferments on the Internet , A large number of people started the relay race of problem orientation :
The first player is the one mentioned above Nicely.
The second is Norway Terje Mathis, He quickly confirmed Nicely The problem of , And wrote a simple assembly test program , Sent to comp.sys.intel In newsgroups ( you 're right , Don't talk about social networks at that time , Even BBS Is not popular )
The third is Germany Andreas Kaiser , He found it. 24 A digital , Their countdown is surging CPU Only single precision results can be obtained .
The fourth is a designer FPU(floating-point-unit) The professionals , California Vitesse Semiconductor designer Tim Coe.
According to 24 Clues of numbers , Speculate that Pentium CPU The cardinality adopted is 4 Of SRT Algorithm , Each clock cycle can generate a two digit quotient , Make the speed twice as fast as before .
It's true , Internal professionals are really good .
To the fifth bar , A super bull appeared ,MATLAB The father of :Cleve Moler

Moler Summarize the previous data , eureka Bug Laws .
It can be seen that after making a mistake , If you want to cover it, you can't cover it , The more you want to cover , The more people in this world want to pick you up .
But so far ,Intel Pentium hardware Bug Also mainly in the science and technology circle , Breaking the circle still needs to wait for an important moment .
4、
1994 year 11 month 24 Number ,JPL( Jet Propulsion Laboratory , Qian Xuesen is an important founder ) Two engineers learned about this Bug, It is suggested that the laboratory stop buying Pentium computers .
CNN Reporter Steve · Yang heard JPL Things about , With a good sense of smell, he immediately contacted Moler, Do an interview , In the evening JPL News and Moler The interview was broadcast on TV , The New York times 、 The Boston Globe and others have made a lot of reports , Articles are overwhelming .
Galloping CPU This is originally difficult to appear Bug It suddenly became a hot topic in the streets .
Under the heavy pressure of the media ,Intel Finally admitted the vulnerability of floating-point calculation , But still hard spoken , It claims not to be serious , And only for those users who can prove that they are affected CPU.
This attitude of trying to muddle through caused public anger , Shaken consumers' awareness of Intel CPU The confidence of the .
Other manufacturers also move with the times ,IBM Suspension of sales with Intel CPU PC of , Lead to Intel Stocks fell sharply .
1994 year 12 month , It won't hold Intel Finally announced : Recall all defective processors .
This is also the first full recall of computer chips in history .
Intel The price to pay for this is :4.75 Billion dollars , The loss of reputation is even more incalculable .
5、
This is not the end of the story .
Logically, there is something wrong with the hardware , Can't modify , Can only replace .
But don't forget the genius we just mentioned ,MATLAB The father of Cleve Moler ,Tim Coe, Argonne National Laboratory Peter Tang And several engineers from Intel , They worked together , stay 12 month 5 No. 1 actually developed a very clever software repair method .
I won't go into details here , Probably : In certain circumstances , Multiply both the divisor and the divisor by 15/16, You can enter a safe state .
This fix was posted to the newsgroup , Let everyone use it for free .
Smart Cleve Moler Let the company release a that can detect and correct division errors MATLAB edition , And immediately sent a press release 《MathWorks Repair the Intel Pentium floating point number Bug》.
Just in the Pentium Bug Make a scene , When it is known all over the country , The press release appeared on the fax machines of major American media .
Cleve Moler Successfully implemented a perfect marketing , This year , His company MathWorks Just less than one family 250 People's small company , Then he walked on the fast lane , Become a giant in this field .

Reference material
https://dl.acm.org/doi/pdf/10.1145/3386331《A History of MATLAB》
https://buzzorange.com/techorange/2019/11/08/intel-pentium-bug/
https://faculty.lynchburg.edu/~nicely/pentbug/pentbug.html
https://en.wikipedia.org/wiki/Pentium
https://en.wikipedia.org/wiki/Pentium_FDIV_bug
https://en.wikipedia.org/wiki/Intel#Intel_Inside
边栏推荐
- Introduction to MySQL optimization
- static和final关键字 学习 demo练习
- Constraints of MySQL table
- Install pyGame
- Event Summary - common summary
- 【搜索】Flood Fill 和 最短路模型
- Inspiration from "flying man" Jordan! Another "arena" opened by O'Neill
- 项目对接支付宝支付,内网穿透实现监听支付宝的支付成功异步回调通知
- Knapsack problem DP
- On the problem that Gorm's beforedelete hook method does not work
猜你喜欢

Installation and template setting of integrated development environment pychar

Typescript details

Mysql表的约束

Install pyGame
![[error reporting] cannot read property 'parsecomponent' of undefined](/img/54/8d4225ec596d6b78348b181a3e636f.png)
[error reporting] cannot read property 'parsecomponent' of undefined

How to create an applet project

Introduction to Kali system ARP (network disconnection sniffing password packet capturing)

Plato Farm有望通过Elephant Swap,进一步向外拓展生态

Introduction to Web Framework

Final Cut Pro Chinese tutorial (2) understanding of material window
随机推荐
多态的详讲
Read write separation and master-slave synchronization
The project connects with Alipay payment, and the intranet penetration realizes the monitoring of asynchronous callback notification of successful payment of Alipay
MySQL下载安装 & 完美卸载
二维数组求和 练习
How does the TCP server handle multiple client connections on one port (one-to-one or one to many)
Review of various historical versions of Photoshop and system requirements
【无标题】按照一定的条件,对 i 进行循环累加。条件通常为循环数组的长度,当超过长度就停止循环。因为对象无法判断长度,所以通常搭配 Object.keys() 使用。\nforEach 一般认为是 普
Why is select not recommended*
How to sinicize the JMeter interface?
事件(event)
C语言 通讯录管理系统(链表,手机号码分段存储,txt文件存取,完整源码)
Plato Farm有望通过Elephant Swap,进一步向外拓展生态
[Niuke discussion area] Chapter 7: building safe and efficient enterprise services
Complete Binary Tree
动态内存函数的介绍(malloc free calloc realloc)
Introduction to Web Framework
【搜索】—— 多源BFS + 最小步数模型
2、 MySQL advanced
How to create an applet project