本文来自连线,由半导体行业观察根据原文翻译
将时钟回拨到2012年12月,Doug Burger站在当时的微软首席执行官 Steve Ballmer面前,与他畅谈未来。
以脾气暴躁闻名的SteveBallmer坐在Building 99演讲室的地板上,与四年前加入公司的计算机芯片研究员Doug Burger探讨一些芯片技术,这就是Burger口中的Project Catapult。
DougBurger.
Burger
表示,技术世界正在跨进一个新的阶段。在未来,一些大型的互联网公司会运营一些跟以往不同的复杂互联网业务,而这些公司就需要打造一些全新的架构去运行这些业务,而这并不是通过软件去升级就可以实现的,当中还需要硬件去配合,当中就包括了服务器和网络设备。而Project Catapult就能解决微软的服务器问题,因为他们都会搭载微软特别定制的芯片,去完成这些特殊任务。
在Burger想向Ballmer介绍其最新的想法的时候,后者吃了一惊,因为他最初招聘Burger来微软,只是希望他能够升级研发中心,而不是来做策略介绍的,但Burger的表现出乎Ballmer的意料。Burger表示,再过去40年里,微软只是聚焦在打造Windows, Word和Excel这类的计算机软件,并不需要更多的硬件。而正是因为这样,微软避开了费事、昂贵且bug众多的硬件产业。而微软做硬件芯片就和可口可乐做鱼翅汤一样怪异。
ProjectCatapult
在演讲室里,Burger娓娓道来,他对Ballmer说,谷歌和亚马逊这样的公司已经开始做出转变,且现在的硬件制造商并不能提供满足微软在线服务所需的硬件服务。如果微软不再做硬件的话,未来一定会落后于其他竞争者,但Ballmer并不认同他的观点。然而一会之后,Bing的运营主管Qi Lu加入了讨论。他表示,他们的团队已经开始了相关的研究。
现在,这个由Berger和Lu打造的FPGA芯片,将会改变这个世界。其实FPGA已经被应用在Bing搜索的支持上,在接下来的数周内,微软将会基于神经网络(模仿人脑结构的人工智能)推动新的搜索算法。借助这个芯片,其执行速度比传统的芯片会快上很多倍,只需要24毫秒就可以实现,规避了以往长达四秒搜索空白的尴尬。
这个全新FPGA同样能够支持微软的云计算服务Azure。在接下来的数年里,微软全球的数百万部的服务器将会装上这个FPGA。“这个给我们带来了很大的灵活性和容量,并带来很大的经济收益”,Burger说。
“这将成为微软的标准,全球的架构”,Breger强调。
Catapult
团队成员:Adrian Caulfield,Eric Chung, Doug Burger,和Andrew Putnam
这个项目并不是为了帮助Bing追赶Google,这是对未来全球系统转变的一个信号。由于硅芯片的发展不能满足人工智能的需求,从美国的亚马逊到中国的百度,这些互联网都在其服务器上使用其相关标准的芯片。
从目前的情况看来,为了维持其网上业务运转,微软每年需要在硬件上投入50到60亿美元,因此关于这些芯片的追求要投入到实操阶段,2014年接任微软CEO的SatyaNadella对记者说。我们要将其提到优先位置,纳德拉强调。
一种全新的传统计算机芯片
2010
年圣诞节前的某一天,微软的研究员
AndrewPutnam
正在度假,突然就接到他
Boss Burger
的电话。
Burger
告诉
Putnam
,节后他会和
Bing
的老大会面,因此他需要一个可以在
FPGA
上执行
Bing
的机器学习算法的硬件。
Putnam
就立刻驱车前往最近的星巴克,打开电脑开始谋划这个项目。
47
岁的
Burger
和
39
岁的
Putnam
之前都是学者,
Burger
之前曾在德克萨斯大学奥斯汀分校担任了九年的计算机学教授,在那里,他专门研究微处理器,并设计了一款叫做
EDGE
的芯片;而
Putnam
则在华盛顿大学担任了五年的研究员,那五年里他一直和
FPGA
打交道。虽然
FPGA
存在了很长一段时间,但一直以来业内都是用它来做原型验证。
2009
年,
Burger
把
Putnam
招进微软,他们开始探索一个想法——这类
FPGA
芯片实际上可以加速在线服务。
这一想法,最初连他们的老板都不认同。
Burger
小组的主管、微软的研究所
VP Peter Lee
说,每隔两年,
FPGA
的时代将要到来的论断,都会被炒热一次。但这次不一样了,
Burger
和他的研究小组坚信,
FPGA
大显身手的时代已经到来,而
Bing
则是最好的测试对象。
Project Catapult
的第一个版本,
Burger
和他的团队在西雅图园区数据中心测试过了这个硬件
微软的搜索引擎
Bing
是一个运行在数千台机器上的在线服务,每台机器都是靠
CPU
驱动的。虽然
Intel
公司一直在推动硬件升级,但是这些硬件跟不上软件的进步是不争的事实。
尤其是在人工智能潮流兴起以后,
Intel
处理器的缺点被进一步放大。
而类似
Bing
这类的服务的需求已经超过了摩尔定律,大家发现,单纯靠增加
CPU
的数量已经不能解决问题了。
但另一方面,如果为每个新难题打造定制化专用芯片又太过昂贵,
FPGA
正好填补了其中的鸿沟。他们让工程师打造比流水线型通用
CPU
速度更快(因为
FPGA
是真并行)、功耗更低的芯片。可定制化让它能够从容面对瞬息万变的技术和商业模式。
在节后会议上,
Burger
主张
Bing
在
FPGA
上的执行能实现低功耗提速,但并不是很明朗。因此在接下来的几个月中,他们就根据
Putnam
的草图去做了一个原型,通过这个原型可以验证,新
FPGA
可以将
Bing
的机器学习算法提速
100
倍。正是这个数据吸引了微软对这个项目的兴趣,这也让
Burger
的团队进入了艰难的开发阶段。
原型机是一个内有
6
个
FPGA
的专用盒,由满满一架子服务器共享。当盒子过热到滋滋作响,或者机器学习算法的复杂度增加到需要多于六个
FPGA
,整个系统就会奔溃。这让
Bing
的工程师无比抓狂。
因此
Burger
的团队又花了好几个月去改进,推出了第二个版本的原型,这是一个能被接入每台服务器的电路板,每个电路板只含有一个
FPGA
,但每个
FPGA
板都可以连接到其余所有服务器。这样就打造了一大批可以让任何
Bing
机器接入的可编程芯片组。
正是这个原型,让
Bing
的老大
Qi Lu
大感兴趣。他给了
Burger
一大笔钱,让他可以用
FPGA
建立一个拥有
1600
台服务器的测试环境。在台湾和中国大陆制造商的帮助下,
Burger
的团队还是花了六个月才打造好这个测试环境。他们最初是在微软园区的数据中心进行了相关测试,但碰上了事故,经过了三天的抢修,一切又回到了正常轨迹。