计算机系统结构变革在即?

15年6月,intel正式宣布167亿美元收购FPGA生产商Altera。此交易为该公司有史以来涉及金额最大的一次收购案例。167亿美金不是小数目,intel 为啥花这么高的代价收购一家FPGA厂商?对x86架构的计算机系统结构会带来什么影响?看我们慢慢分析。

FPGA是什么?

FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。

FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输入输出模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。 现场可编程门阵列(FPGA)是可编程器件,与传统逻辑电路和门阵列(如PAL,GAL及CPLD器件)相比,FPGA具有不同的结构。FPGA利用小型查找表(16×1RAM)来实现组合逻辑,每个查找表连接到一个D触发器的输入端,触发器再来驱动其他逻辑电路或驱动I/O,由此构成了既可实现组合逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块。FPGA的逻辑是通过向内部静态存储单元加载编程数据来实现的,存储在存储器单元中的值决定了逻辑单元的逻辑功能以及各模块之间或模块与I/O间的联接方式,并最终决定了FPGA所能实现的功能,FPGA允许无限次的编程。

FPGA并行运行的原理

FPGA最大的特点除了可编程之外,还有一个非常重要的是指令是并行运行的。

CPU是在同一时刻只能执行一个任务,单片机是cpu,cpu里基本的单元是逻辑控制单元来执行程序。但是fpga不是cpu,许多的逻辑单元构成的它们的内部结构不一样,就是说它不是执行程序的,可以把fpga看成是一推与门,非门,查找表,触发器的组合。对fpga编的程序其实不是让它用来执行的,也就是说在出厂之前,FPGA内部元件之间的连线已经完全固定,我们的编程也只是在此基础上选择哪些相连、哪些断开罢了。而是fpga的内部结构,也就决定它内部这些与门非门触发器的连接方式。与门非门触发器根据外部引脚决定输出,引脚同时变化,FPGA就有不同的输出,所以可以说是并行运行的。

FPGA适合场景

FPGA已被证明是在搜索、排序以及字母配对算法等方面能带来显著加速效果的产品,微软和百度此前都曾表示已在旗下数据中心里使用了FPGA。

1、微软公司的基本设计思路是将FPGA纳入输入请求与输出数据的直接通路,这意味着不再需要经由网卡将数据分流至FPGA,再通过内部系统总线接收返回结果。阵列能够自行处理任务,或者将信息传递给主机的英特尔x86处理器以进行必要操作。另外,FPGA还能够在传输过程中对数据执行更多附加操作。

举例来说,FPGA能够在数据触及运行于设备上的应用之前,对其进行加密与解密。

这一设计方案的结果在于,全部云服务皆借此实现了显著的延迟削减效果。“通过让FPGA与网络交换机直接通信,每套FPGA皆能够直接同数据中心内的其它FPGA经由网络实现通信,且无需涉及任何CPU软件。

2、在今年9月份召开的百度世界大会上,百度高级副总裁王劲在接受采访时曾透露,百度已经打造了FPGA版的百度大脑,性能远超此前的版本。百度目前主要将FPGA应用在在线服务商,性能提升3~4倍。

人工智能的应用场景,包括云(数据中心)和端(智能设备)两部分;其中,云端又包括离线训和在线服务。离线训练是指利用海量数据,选择合适的训练方法,训练出一个模型。在线服务是指,利用训练出来的模型来响应在线响应用户的请求。端部分也对人工智能有着很大的需求:很多终端设备,也都需要能运行人工智能的算法,能智能地响应外部请求,如无人车、智能摄像头等。

在离线训练上,GPU可以阶段性地满足要求;智能设备虽然炒得火,但时机仍未成熟。而在在线服务方面,对提升计算能力的需求是客观存在且比较急迫的。但GPU因为功耗、成本等原因,不适合线上大规模部署。

通过不断地创新、优化,FPGA版百度大脑迭代了许多版本,大脑的计算能力不断提升,功耗不断下降:最终版本比第一个版本功耗下降了约50%。

FPGA版百度大脑逐步应用在百度产品中,包括语音识别、广告点击率预估模型等。据了解,应用了该版本百度大脑后,语音在线服务、广告点击率预估模型等的计算性能皆提升了3~4倍。

INTEL的胶水芯片

回到intel的收购动作,intel肯花167亿美元收购Altera公司绝不是冲动的爱情,Altera不仅是Intel的代工合作伙伴,而且Intel很早就考虑处理器与FPGA电路的集成了,早在2014年6月份Intel高级副总、数据中心级连接系统部门总经理Diane Bryant就对外提到了他们会推出定制化的至强处理器,客户可以根据自己的需要定制两种不同的FPGA芯片,一种是Intel把FPGA芯片指令集成到Xeon处理器中,另外一种就是Intel推出FPGA+Xeon处理器双芯片封装的芯片,充分发挥FPGA可编程的优势。

当时Intel并没有提到他们合作用的FPGA芯片来自哪家公司,现在可以公布了,这家公司就是被Intel收购的Altera公司,如今变成子公司了,各种合作也更方便了。指令集成是不容易实现的,最快的方法就是将FPGA和CPU封装在一起。

前面说到这种处理器将采用双芯片封装,Intel对这种封装其实也很熟悉了,还记得Intel推出的第一代Pentium D双核处理器吗?Intel当时为了尽快拿出产品,Presler架构的PD双核并不是原生的,而是两个单核处理器封装在一个芯片内,被玩家戏称为胶水双核,未来的处理器大体上也会是这种结构。

未来发展判断

1、巨头intel的推进,预计CPU+FPGA可能会有一个大的发展。

2、FPGA由于其可编程行,并行能力加上和CPU深度集成,计算机体系结构,如网络/内存的作用都可能发生变化。

3、FPGA在人工智能领域的发展还刚起步,还有更广空间。

参考文档: http://www.d1net.com/server/vendor/437324.html http://ee.ofweek.com/2015-12/ART-8110-2801-29035307_3.html

原文发布于微信公众号 - 大数据和云计算技术(jiezhu2007)

原文发表时间:2016-10-23

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏james大数据架构

你离架构师还有多远?

  软件架构师在整个软件开发过程中都起着重要的作用,并随着开发进程的推进而其职责或关注点不断地变化,总结下面几点。   在需求阶段,软件架构师主要负责理解和管...

3533
来自专栏云计算D1net

云计算:拼的是运维

云计算的IaaS、PaaS、SaaS最后那个S都是Service。就是说,无论你云计算长成什么样,都得要向用户提供“服务”而不仅仅是软硬件和各种资源。 【云计算...

5069
来自专栏SDNLAB

不管怎么称呼,基础设施2.0时代终究是来了

多年前,当云计算刚刚兴起,DevOps还只是一个想法的时候,一个非常小但颇有远见的小组聚在一起讨论基础设施的未来。基础设施2.0工作小组囊括了很多互联网传奇人物...

2745
来自专栏资深Tester

软件测试人员应该如何解决面试中不会回答的问题

2106
来自专栏互联网数据官iCDO

别蛮干!优化转化除了转化漏斗,你的弹药库还需要几种分析武器

  转化分析是我讲的最多的领域。五六年前我讲的时候,大家不是很在乎,因为那时候流量不是事儿。今天,大家似乎都开始意识到,地上钻个孔就能喷出油的日子似乎离我们越来...

3689
来自专栏大数据文摘

GitHub迎来史上最大产品变革:发布可直接运行代码的GitHub Actions

10月16日,全球最大开发者社区GitHub Universe开发者大会在旧金山召开,会议持续两天,在刚刚顺利闭幕。本次大会主题为“认可开发者集体的成果以及增强...

1094
来自专栏前端架构

UED团队规范设计参考及建议

公司产品线逐渐增多,变动频繁且并行开发,常常需要设计与开发能够快速的做出响应。同时这类产品中有存在很多类似的页面以及组件,可以通过抽象得到一些稳定且高复用性的内...

6509
来自专栏灯塔大数据

数据的阴暗面:什么是暗数据?为什么暗数据很重要?

? 最近引起热议的术语暗数据,确切的说,就是来自于大数据的阴暗面。尽管暗数据这个名字听起来不吉利(让人联想到一个少年哥特乐队会取的绰号),但是或许更加的准确。...

3245
来自专栏杨建荣的学习笔记

DBA技能发展变化小结

去年年底的时候,我尤其焦虑,因为圈子的缘故,我能感受到行业里的变化和趋势,所以所想和所做不能匹配的时候,焦虑难免产生。当然我们要做减法和解法。

1231
来自专栏北京马哥教育

不懂Python学习如何下手?看完本文您能知道60%

本文由马哥教育Python自动化实战班导师wayne撰写,内容略经小编改编和加工,观点跟作者无关,最后感谢作者的辛苦贡献与付出。 你觉得Python真的好吗?或...

4135

扫码关注云+社区