当前位置:主页>嵌入式应用

数据中心变革中FPGA的优势将得到充分释放

作者:中国电子商情 单祥茹  来源:中国电子商情

发布时间:2017-09-26

0k

我们身处的这个世界正在变得越来越智能,随着联网设备的增多,所产生的数据量呈几何倍数地增长。根据预测,到2020年,平均每位互联网用户每天将产生1.5GB流量;自动驾驶汽车每天产生4TB数据;智能工厂每天的数据量将达到1PB。面对奔腾而来的数据洪流,数据中心、云计算等将遇到很多新的挑战,只有在网络的基础设施上做出非常大的调整,才能够满足这些新的需求。

FPGA对于异构架构至关重要
现在,越来越多的基础架构开始向异构计算转型。在异构架构中,除了CPU还必须有其他器件用来加速,也就有了专用加速器和通用加速器的存在。由CPU+ASSP/ASIC构成的专用加速器,能为指定的、不变的功能提供更高计算效率,它覆盖的是那些比较稳定,并且需要最大化计算效率的应用。CPU+FPGA组成的通用加速器,主要面向网络、存储和计算领域中定制的和变化的工作负载,更能满足动态加速需求,是个多面手。

图1  Intel可编程解决方案事业部(Intel PSG)FPGA软件解决方案高级总监Bernhard Friebe

有关FPGA在异构计算架构中的作用,Intel可编程解决方案事业部(Intel PSG)FPGA软件解决方案高级总监Bernhard Friebe先生是这样解释的,他说:FPGA——现场可编程门阵列,顾名思义,可以被分成两部分来看,一个是它的现场可编程性,另一个则是门阵列。门阵列是一系列硬件的组合,包括DSP模块、乘法器等,它可以被用来定制实现某一个特定的硬件应用。门阵列的最大好处在于它可以并行处理,明显提高了FPGA的计算效率,而功耗和延迟都有一定程度的降低。FPGA的现场可编程性,意味着设计人员可以任意地、不限次数地对器件进行调整。当数据中心出现一些新的工作负载要求,或需要适配新的标准和来自云端的新需求时,可以实时地按需定制FPGA模块,从而形成一款通用而灵活的加速器。据Bernhard Friebe介绍,就在几周前,微软刚刚宣布,他们要把FPGA用于微软的Brainwave项目中。该项目可以在一个较大的深度神经网络里打造39.5TB的计算性能,并且实现了非常低的延迟。这种基于FPGA的深度学习加速平台可以提供“实时人工智能”技术,使云基础设施能够以超低延迟来尽可能快速地处理和传输数据。在云中,系统需要处理直播数据流(包括视频、传感器或搜索查询)并快速将数据传送回用户,因此提供实时人工智能变得越来越重要。

图2 FPGA将为云上业务提供卓越性能

FPGA的灵活性不仅是体现在核心部分,包括周边的I/O部分同样可以看到它在数据中心和云端应用的独特之处。随着越来越多的计算发生在数据中心和云端,在实时处理的同时还要保证极低的延迟。由于FPGA在I/O方面的出色灵活性,它可以直接与网络或者相关的接口进行对接,比如上面提到的微软Brainwave项目就是利用了这个性能,可以直接把数据输入到FPGA进行加速以实现极低延迟的响应。

CPU+FPGA异构架构解决了实际难题
Bernhard Friebe表示,现在已有很多合作伙伴开始使用Intel PSG的FPGA用来解决一些具体的问题,以达到加速的效果。

SWARM64数据库加速:这个项目充分利用FPGA的并行处理能力,做到实时数据的加速和分析。与传统数据仓储方式相比,加速后的数据处理能力有了大幅提升,其中,实时数据分析性能提升5倍、传统的数据仓储效益提升2倍以上、存储压缩性能提升3倍以上。根据SWARM64的预测,通过使用FPGA加速,他们能够在三年时间内节省40%的成本。

京东基于FPGA的深度学习线上服务:来自京东AI与大数据的研发团队,通过Intel Arria 10 FPGA实现了卷积神经网络(CNN)和长短时记忆神经网络(LSTM),用于分析京东云服务上的海量图像信息。在低延迟和高吞吐需求下,依然可以精准理解和分析图像内容。这一技术不仅适合京东私有云上的图像处理,还可帮助接入京东云服务的用户使用深度学习线上服务,享受到FPGA技术带来的人工智能应用能力的提升。

加速堆栈让应用开发者的工作更轻松
Intel PSG一直致力于开源社区和开源标准技术的支持,包括打造一个健康的生态系统。Bernhard Friebe表示,在中国,Intel与开放数据中心委员会(ODCC)有着悠久的合作关系,其中,最新的Scorpio3.0版本已经把FPGA纳入进来。在该标准中,Intel PSG在FPGA的池化(pooling)和存储方面做了特别的阐述。

在云环境中,为了让应用开发人员更轻松完成设计工作,Intel PSG还发布了面向Intel至强CPU和FPGA的加速堆栈。该堆栈解决方案既可以帮助应用开发人员去使用FPGA,同时也能够帮助数据中心和运营者能够很好地去嵌入FPGA进行使用。

Bernhard Friebe 提到:“在加速堆栈的多层架构中,底层硬件为Intel至强CPU和FPGA,在此之上,我们还创建了一个包含OPAE在内的加速环境。作为一个开放的、可编程的加速引擎,OPAE与底层的硬件是相互独立的,也就是说,它提供一个标准化的、一致的界面给这个应用的用户,用户则借助Intel提供的一系列驱动或者API做进一步开发。在此过程中,用户无需关注硬件层面的设计。”

随着大量数据的融入,数据中心和云都将发生巨大变化,其中,数据中心会变成一个异构的加速性环境。同样,也会有越来越多的需求在公有云和私有云之间无缝地进行移动和迁移。这其中,FPGA有着非常大的优势,它本身具有的极强通用性,能够很好地满足不断出现的新需求。在兼顾硬件性能的同时,其软件可编程性也显现出更多优势。

0k