《电子技术应用》
您所在的位置:首页 > 模拟设计 > 业界动态 > 前景可人 Intel选择拥抱FPGA

前景可人 Intel选择拥抱FPGA

2017-02-19
关键词: FPGA 服务器 交换器 CPU

我们知道,相对于专业的ASIC,FPGA有上市时间和成本上的优势。另外,在大多数情况下,FPGA执行某些功能较之CPU上的软件操作更高效。这就是为什么我们认为它不但会运用在数据中心的服务器交换器、存储层的各个角落,并且具有加速整个工作流程的功能。

然而我们不能过分乐观,尤其是在2015年12月,Intel以167亿美元收购了FPGA生产商Altera之后。

在2014年年底,当时还处于独立的Altera公司高层盯上了基于CPU+FPGA的数据中心并行计算的发展前景——这个当时价值大约10亿美元的市场。而并非数据中心里约2.5亿美元的CPU-GPU市场和直接应用CPU处理器的90亿美元市场。

Altera做出这个决定的原因在于他们认为这个组合较之另外两个方案,有编程的简便性和能效优势。人们对CPU非常熟悉,并发现寻找C程序员也不会太难。因此对大部分开发者来说,在执行运算任务的时候,持续使用这种方案不需要冒太大的风险,但是能源效率相对比较低,尤其是在密集的计算和固有的并行工作负载的情况底下。

至于CPU+GPU的方案,程序员并不是很熟悉,但是拥有很高的效率。

根据Altera的估计,使用OpenCL对混合CPU-FPGA系统进行编程比使用Nvidia的CUDA环境对于程序员来说更容易(某些方面肯定是有争议的),但用HDL来硬编程FPGA是相当困难的,因此需要OpenCL或者通过其他抽象层来将CPU中的负载转移到FPGA上。

Intel收购Altera改变FPGA格局

这个十亿美元的数据中心市场被Altera、Xilinx和其他FPGA供应商瓜分。在Intel于2015年6月收购了Altera之后,这个市场变得更加复杂。

在收购之前的2014年,Altera的19亿美元收入中,有16%来自于与数据中心相关的计算、网络和存储业务,其总值达到3.04亿美元。那些在这个领域深耕十几二十年的通信和无线设备系统制造商想要有更高的能源效率,更低的成本和更高的扩展性,这些都是FPGA所擅长的领域。另外有一点需要提一下,那就是在执行这些功能的时候,使用FPGA并不需要像使用CPU那样需要操作系统和相应的软件。这部分的营收占了Altera营收的44%,总额为8.35亿美元。

Altera另外的22%收入,即4.18亿美元,来自工业控制、军事设备和汽车制造等领域。他们面对相同的困境,因此选择FPGA来处理他们的一些工作负载。

其实早在2014年,英特尔看中了价值1150亿美元的各种类型的芯片潜在市场。当中可编辑逻辑设备(以FPGA为主)约占4%,ASIC占18%,其余为ASSP的大杂烩。

在可编辑逻辑设备的领域中,英特尔预估Altera占有48亿美元市场中的39%,Xilinx占有49%,剩下供应商则占据剩下的12%。

当时英特尔没有收购Altera的原因是因为FPGA业务的增长速度几乎与其数据中心集团(为服务器,存储和交换机制造商提供芯片,芯片组和主板)的速度一样快。

再者,英特尔没有这样做也是因为摩尔定律逐渐缓慢下来的脚步,给FPGA带来了日益增长的竞争威胁。

实际上,如果应用的话,在数据中心里不止安装一个FPGA、GPU或DSP加速器,但不需要安装多个Xeon CPU。由于英特尔不能继续为Xeons提供更多的核心和加速器,所以他们得出了将FPGA当做加速器的结论。

除非FPGA能在数据中心创造5亿美元的收益,或者几年后创造10亿美元或更多的收入。不然英特尔宁愿牺牲两至三倍的Xeon收入,也不会把Xeon的收入拱手相让。

深度学习加持,FPGA前景可人

根据英特尔的预测,他们计划从现在到2023年以接近直线增长率来提升FPGA的业务。对此我们总是抱有怀疑的态度。但FPGA业务随着时间的推移或多或少地在增长(比15年前增长约2.5倍)。

英特尔还预计,FPGA的营收在2014年到2023年之间将会再翻一倍。按照英特尔预测,从2014年到2023年间其复合年增长率为7%,其收入应该略低于预测的89亿美元。有趣的是,由于英特尔的预测并没有把来自数据计算中心(服务器,交换和网络)的FPGA收入份额纳入计划中,这将会发生很大变化。让我们分析一下:

如果Altera和Xilinx的市场份额没有发生改变,且假设Altera的收入在网络,计算和存储的部分保持不变,那么Altera这一部分的业务收入到2023年将会达到5.6亿美元左右。我们认为Intel这样的数据低估了数据中心在提供更有效和灵活计算所面对的压力。不给过我们认为FPGA的前景远远优于这个预测。也就是说,许多FPGA技术的支持者一直期待FPGA在数据中心中获得计算合法化的那天很快到来。

讽刺的是,英特尔本身作为FPGA的编程专家,硬件描述语言的使用者,以及知名的ASIC制造商,竟成为推动FPGA成为加速器优先选择的主要参与者。这样的加速器既能作为独立的离散计算元件,又可以作为混合 CPU-FPGA器件。

这也是为什么从2016年以来,我们看到所有关于Altera的新闻都是昭示FPGA将会有的大规模增的增长。所以至少在短期,他们除了为其他的FPGA制造商作嫁衣裳,几乎别无他法。

这次收购不仅是FPGA发展的里程碑,也是英特尔对FPGA巨大的潜力的承认。FPGA作为未来强大的计算加速器,不但影响主要企业的决策和市场趋势,而且加速企业中的工作负载,促进超大规模数据中心的内部搜索,以及提高高性能计算模拟的地位。

在跨越2017年之际,FPGA在应用程序中等级中新增了机器学习和深度学习,这给FPGA产业敲下了又一重锤。

我们知道,相对于专业的ASIC,FPGA有上市时间和成本上的优势。另外,在大多数情况下,FPGA执行某些功能较之CPU上的软件操作更高效。这就是为什么我们认为它不但会运用在数据中心的服务器、交换器、存储层的各个角落,并且具有加速整个工作流程的功能。

然而我们不能过分乐观,尤其是在2015年12月,Intel以167亿美元收购了FPGA生产商Altera之后。

在2014年年底,当时还处于独立的Altera公司高层盯上了基于CPU+FPGA的数据中心并行计算的发展前景——这个当时价值大约10亿美元的市场。而并非数据中心里约2.5亿美元的CPU-GPU市场和直接应用CPU处理器的90亿美元市场。

Altera做出这个决定的原因在于他们认为这个组合较之另外两个方案,有编程的简便性和能效优势。人们对CPU非常熟悉,并发现寻找C程序员也不会太难。因此对大部分开发者来说,在执行运算任务的时候,持续使用这种方案不需要冒太大的风险,但是能源效率相对比较低,尤其是在密集的计算和固有的并行工作负载的情况底下。

至于CPU+GPU的方案,程序员并不是很熟悉,但是拥有很高的效率。

根据Altera的估计,使用OpenCL对混合CPU-FPGA系统进行编程比使用Nvidia的CUDA环境对于程序员来说更容易(某些方面肯定是有争议的),但用HDL来硬编程FPGA是相当困难的,因此需要OpenCL或者通过其他抽象层来将CPU中的负载转移到FPGA上。

Intel收购Altera改变FPGA格局

这个十亿美元的数据中心市场被Altera、Xilinx和其他FPGA供应商瓜分。在Intel于2015年6月收购了Altera之后,这个市场变得更加复杂。

在收购之前的2014年,Altera的19亿美元收入中,有16%来自于与数据中心相关的计算、网络和存储业务,其总值达到3.04亿美元。那些在这个领域深耕十几二十年的通信和无线设备系统制造商想要有更高的能源效率,更低的成本和更高的扩展性,这些都是FPGA所擅长的领域。另外有一点需要提一下,那就是在执行这些功能的时候,使用FPGA并不需要像使用CPU那样需要操作系统和相应的软件。这部分的营收占了Altera营收的44%,总额为8.35亿美元。

Altera另外的22%收入,即4.18亿美元,来自工业控制、军事设备和汽车制造等领域。他们面对相同的困境,因此选择FPGA来处理他们的一些工作负载。

其实早在2014年,英特尔看中了价值1150亿美元的各种类型的芯片潜在市场。当中可编辑逻辑设备(以FPGA为主)约占4%,ASIC占18%,其余为ASSP的大杂烩。

在可编辑逻辑设备的领域中,英特尔预估Altera占有48亿美元市场中的39%,Xilinx占有49%,剩下供应商则占据剩下的12%。

当时英特尔没有收购Altera的原因是因为FPGA业务的增长速度几乎与其数据中心集团(为服务器,存储和交换机制造商提供芯片,芯片组和主板)的速度一样快。

再者,英特尔没有这样做也是因为摩尔定律逐渐缓慢下来的脚步,给FPGA带来了日益增长的竞争威胁。

实际上,如果应用的话,在数据中心里不止安装一个FPGA、GPU或DSP加速器,但不需要安装多个Xeon CPU。由于英特尔不能继续为Xeons提供更多的核心和加速器,所以他们得出了将FPGA当做加速器的结论。

除非FPGA能在数据中心创造5亿美元的收益,或者几年后创造10亿美元或更多的收入。不然英特尔宁愿牺牲两至三倍的Xeon收入,也不会把Xeon的收入拱手相让。

深度学习加持,FPGA前景可人

根据英特尔的预测,他们计划从现在到2023年以接近直线增长率来提升FPGA的业务。对此我们总是抱有怀疑的态度。但FPGA业务随着时间的推移或多或少地在增长(比15年前增长约2.5倍)。

英特尔还预计,FPGA的营收在2014年到2023年之间将会再翻一倍。按照英特尔预测,从2014年到2023年间其复合年增长率为7%,其收入应该略低于预测的89亿美元。有趣的是,由于英特尔的预测并没有把来自数据计算中心(服务器,交换和网络)的FPGA收入份额纳入计划中,这将会发生很大变化。让我们分析一下:

如果Altera和Xilinx的市场份额没有发生改变,且假设Altera的收入在网络,计算和存储的部分保持不变,那么Altera这一部分的业务收入到2023年将会达到5.6亿美元左右。我们认为Intel这样的数据低估了数据中心在提供更有效和灵活计算所面对的压力。不给过我们认为FPGA的前景远远优于这个预测。也就是说,许多FPGA技术的支持者一直期待FPGA在数据中心中获得计算合法化的那天很快到来。

讽刺的是,英特尔本身作为FPGA的编程专家,硬件描述语言的使用者,以及知名的ASIC制造商,竟成为推动FPGA成为加速器优先选择的主要参与者。这样的加速器既能作为独立的离散计算元件,又可以作为混合 CPU-FPGA器件。

这也是为什么从2016年以来,我们看到所有关于Altera的新闻都是昭示FPGA将会有的大规模增的增长。所以至少在短期,他们除了为其他的FPGA制造商作嫁衣裳,几乎别无他法。

这次收购不仅是FPGA发展的里程碑,也是英特尔对FPGA巨大的潜力的承认。FPGA作为未来强大的计算加速器,不但影响主要企业的决策和市场趋势,而且加速企业中的工作负载,促进超大规模数据中心的内部搜索,以及提高高性能计算模拟的地位。

在跨越2017年之际,FPGA在应用程序中等级中新增了机器学习和深度学习,这给FPGA产业敲下了又一重锤。

首先,在2016年第二季度英特尔财务声明会上,Krzanich承诺,英特尔将加强对目前使用Altera的ARM-FPGA芯片客户的支持。

Waxman进一步澄清:“我们的观点是会以某种形式把FPGA集成到Xeon里。我们已经公开宣布将会打造第一代使用这种单一封装的设备,但是我们将根据进展情况调整方向,甚至可能会在同一个die上实现。我们将根据客户的反馈了解什么是正确的组合。

顺便说一下,我仍然期待看到没有集成的系统,保持他们会做系统级的协同。我们不会将Xeon与FPGA以多种方式组合集成,反之我们会在市场上找到正确的目标和平衡。”

编程问题首当其冲

虽然Altera的工具集利用OpenCL编程模型获得应用程序代码,并将其转换为RTL(FPGA的原生语言),但是有趣的是,英特尔并不认为FPGA在数据中心的未来成功是基于OpenCL与RTL工具集成的改进或更广泛地采用OpenCL。

Waxman也强调地说:“这并不是以OpenCL为基础的。”虽然我们确实把OpenCL看作是进一步扩大FPGA应用范围的一个途径,但目前FPGA的初始云端部署可能由更具能力的公司完成,但他们并没有要求我们提供OpenCL。Waxman补充说。

Waxman在不能“自由”地谈论的情况下,暗示英特尔有计划使FPGA更容易编程。他表示Intel将会为程序员提供RTL库,方便他们调用在FPGA上部署的例程,并推动在其上执行应用程序的gate的形成,来实现应用程序例程的gate,而不是让他们自己创建例程。这有一定的意义,与Convey(现在是美光科技的一个部门)几年前用FPGA加速系统处理的方案一样。

Waxman说:“我认为有一个连续的加速。在一开始,你可能不知道你正在试图加速什么,只是做了一些尝试,因此在这个阶段加速,你想要的是一个更通用的目的。当你开始真正地想要加速的时候,你会想要更高效的,更低的功耗和更少的空间,这时你就会把焦点移到FPGA上。”

Waxman还引用了Microsoft在其“Catapult”系统上使用FPGA加速的方案来说明。

该系统采用其Open Cloud Server并添加FPGA夹层卡作为加速器。我们在3月份研究了这个项目,将这些加速器应用在Google上执行相同的图像识别训练算法,得出的结果显示,25瓦的FPGA器件相对于使用Nvidia Tesla K20 GPU加速器(235瓦特)的服务器,提高了更好的性能/瓦特。

正如我们所说,我们对于微软和Google发布的性能数据毫无疑问。但是对分立的GPU或FPGA执行应用性能和对自身的热配置文件进行测量都是不公平的。你必须在服务器节点级别上看到这一点。

如果意识到这点,得到FPGA辅助的Microsoft服务器在系统级只稍稍领先于用Tesla K20s的Google服务器。(这些只是我们基于每秒每瓦特图像处理性能的估计)。在这个对比中,Microsoft应该不考虑成本。而且坦白说,不同于什么都配备的Tesla GPU,微软开放云端服务器并没有使用Juice或Cooling。真正的评测怎么都会使用GPU夹层卡,同时还需要考虑热量,性能和价格等因素。

但是Waxman讨论的重点仍然是那个。“在某个时候,你真的很想要那个能给你惊喜,并且能做到更低功耗的方案。而这就是我们的FPGA方案所擅长的方面。”

云端业务

最后要考虑的是英特尔的云端业务。这些客户现在占据了他们数据中心集团收入的25%。

整体来看,他们的购买量每年增长约25%。预计从2016年开始,未来几年整体数据中心集团业务都将增长15%。让我们做一些计算。

如果英特尔的计划如期实施,他的数据中心集团2016年收益将会达到166亿美元。云端服务提供商(其中包括在The Next Platform上使用我们的语言的云端构建者和超大规模计算者)占大约41亿美元,其余归属于英特尔数据中心,销售数据大约为125亿美元。因此,英特尔数据中心的业务增长在12%左右(除云端外),是云端速率的一半。英特尔需要以任何方式来满足云端的增长和明显的FPGA需求,即使它只占用Xeon容量的一点点。对于英特尔来说是这个的选择比让GPU加速持续增长的方案要好。

编程方面可能是阻碍FPGA被广泛采用的一个主因(不像其他加速器,具有丰富的开发生态系统,如Nvidia GPU的CUDA)。这就驱动程序员去基于C语言去做扩展设计,或使用OpenCL,而不是用过去困扰FPGA开发的低级模型。但即使在应用的过程中有这么多里程碑,FPGA仍然不被主流青睐。我们将会探索解决编程问题的方法和机会。

虽然我们已经与这个相对较小的生态系统中的许多供应商(包括Altera和Xilinx,两个主要供应商)进行了交流,但按照FPGA长期研究员Russell Tessier所说,FPGA在更广阔的市场上大展拳脚的日子还在前面,新的发展意味着更广泛的采用。

他在马萨诸塞大学(他还在Altera工作,并且Mentor Graphics收购的虚拟机工程的创始人)研究了FPGA二十多年,他认为FPGA从科学项目到企业应用的形势正式缓变化。他认为其中的关键是来自于设计工具的改进,设计人员不断提高他们设计高水平。除此与外,工具vendor可以更好地引导芯片发展。他补充说,设备内的大量逻辑量意味着用户能够实现更多的功能,这使得FPGA对更多领域更广泛的吸引力。

Tessier说:“在过去几年里,FPGA的一个明显趋势就是这些设备更容易“程序化”。

Xilinx目前鼓励使用其Vivado产品的时候,用C语言进行设计。Altera还有一个已经开发的OpenCL环境。关键是两家公司都在试图创建一个环境,让用户可以使用更熟悉的编程(如C和OpenCL),而不必是使用RTL设计专家所擅长的Verilog或VHDL。虽然在过去几年里取得不错的成绩,但这仍然处于推进的阶段,不过这将有助于把更多的事情地移入主流。

其中一个对FPGA真正有利的因素就是如果将其和芯片搭配使用,建立一个快速的内部互联,它能解决memory和数据移动中的限制。这种优势就是吸引Intel收购Altera的主要诱因。另外,如果像英特尔和IBM这样的大公司能够积极推动FPGA的软件生态系统的建设,其应用市场将会迅速扩张。FPGA的主流化(至少现在没有GPU那么重要,)可能会更快地出现。

Tessier解释:“标准核心处理器集成的增加肯定是关键所在。过去的障碍是语言和工具,随着这些障碍越来越少,为芯片供应商新的合作机会打开了一扇门。由于这些和其他“主流化”趋势出现,不断做出的改变的FPGA的应用领域将继续增长。例如,金融服务商店是第一个使用FPGA进行财务趋势和股票选择分析的用户,但使用案例正在扩大。现在有更强的设备可以解决更大的问题。

更广泛的应用领域

除此之外,FPGA通过的其他新领域发现新用途,包括DNA测序,安全性,加密和一些关键的机器学习任务。

当然,我们希望FPGA变得强大,并“进入”世界上最大的云端和超大规模数据中心,Xilnix数据中心部门副总裁Hamant Dhulla对此表示强烈赞同。他在2016年初,他告诉The Next Platform, “异构计算已经不再是一种趋势,而是现实”,也就是在那个时候,微软推出了使用FPGA的Catapult案例(现在就很多或以后会很多),英特尔收购了Altera以及看到了更多FPGA将广泛应用在数据中心的声明。

从机器学习,高性能计算,数据分析等领域,FPGA在更多样化的应用领域中崭露头角。这些都与FPGA上嵌入了越来越多可用的on-chip存储器有关,这些都是FPGA制造商和潜在终端用户所期待的。 Dhulla表示,市场潜力足够大,让Xilinx能够调整其业务的方式。 过去几年,存储和网络主导了FPGA用户群。但未来五年内,计算端的需求将远远超过存储和网络,并都将沿着稳定的增长线继续发展。

在FPGA其他的热门领域(包括机器学习),它们的更像是一个带有GPU 的“协作”加速器。毫无疑问,对于许多机器学习工作负载的训练部分,GPU是主要的。因此为这里需要很多计算能力,就像HPC一样,其中power envelope tradeoff值得的。但是这些客户购买了数十或数百个GPU,而不是数十万个,庞大的加速器数目正使用在机器学习pipeline的推理部分,这就是市场所在。

正如我们指出的,Nvidia正在使用两个独立的GPU(用M4来训练,更低功耗的M4插入来削减服务器)来抵消这一点,但Dhulla认为FPGA仍然能够通过采用PCIe方法降低功耗,也可以嵌入超大规模数据中心。

他们的SDAccel编程环境通过提供对C,C ++和OpenCL的高级接口,使其更实用,但是推动超大规模和HPC采用的真正途径是通过最终用户示例。

当涉及到这些早期的用户,就像为下一代的FPGA的应用搭建了舞台,Dhulla指向像Edico Genome这样的公司。Xilinx目前还与其他领域的客户合作,包括石油和天然气和金融方面的历史计算方面。早期客户将Xilinx 的FPGA应用在机器学习,图像识别和分析以及安全性方面,这可以看作他们计算加速业务发展的第一步。

尽管双精度性能和总体价格不佳,FPGA的真正的大规模应用机会在于云端。因为FPGA可以提供GPU所不能提供的优势。如果FPGA供应商能够说服其最终用户,他们的加速器可以提供相当大的性能提升(在某些情况下他们会这样做)给关键的工作负载。提供一个通过带有其他加速器(例如CUDA)的complexity-wise的编程环境推进OpenCL开发,通过在云端中提供FPGA来解决价格问题。这可能是一个新的希望。

当然,这种希望来源于将FPGA部署到有超密集服务器云端架构内,而不是在单机的销售上。这种模式已经在FPGA的金融服务中发生。

正如他们GPU加速器“伙伴”围绕深度学习进行拉动,以便迅速得到更多的用户, FPGA设备在探索一个通过解决神经网络和深度学习的问题的方式找寻入侵市场的真正的机会。

新的应用程序主机意味着新的市场,随着云端应用的推广消除了一些管理开销,它可能意味着更广泛的采用。FPGA供应商努力推动它在一些关键的机器学习,神经网络和搜索方面的应用。FPGA在诸如自然语言处理,医学成像,深度数据检测等领域中的超大规模上下文中变得越来越普遍。

在过去一年里,FPGA的多种应用得到曝光,特别是在深度学习和神经网络,以及图像识别和自然语言处理等领域。例如,微软使用FPGA在1,632个节点上提供2倍的搜索服务,并采用创新的高吞吐量网络来支持Altera FPGA驱动的工作。中国的搜索引擎巨头百度(也是许多深度学习和神经网络任务GPU用户)正在用FPGA执行存储控制,其每天的数据吞吐量在100TB到1PB之间。

使用FPGA的大规模数据中心和其他领域的应用正在吸引人们对FPGA的单精度浮点性能的更多关注。

虽然一些案例使用(包括百度示例),将GPU作为计算加速器和FPGA用在存储端,但Altera,Xilnix,Nallatech和IBM的研究人员在OpenPower联盟展示了FPGA在云端深度学习的光明前景。

可以说现在属于FPGA的一个黄金时代。


本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。