您的位置 首页 硬件

铲除通向根据FPGA的OpenCL数据中心服务器的妨碍

从支持中小机构运作的服务机房,到支持美国大型企业和提供云计算服务接入的企业级

从支撑中小组织运作的服务机房,到支撑美国大型企业和供给云核算服务接入的企业级数据中心,数据中心在现代经济中发挥着主干效果。依据自然资源保护委员会的核算[IY1],数据中心是美国用电量最大、增加最快的用电大户之一。2013年美国数据中心估量耗电约910亿千瓦时,逾越纽约市悉数居民用电的两倍以上,并且到2020年用电量有望到达1400亿千瓦时[1]。很显着,下降用电关于扩展数据中心,进步可靠性和下降运营本钱具有重要意义。

依据详细的服务器运用,数据中心各个不同。许多服务器长时间不间断运转,使得硬件可靠性和耐用性极为重要。尽管服务器可以运用商用核算机部件拼装,但要害使命型企业级服务器往往运用以硬件加快为意图的专用硬件,如图形处理单元(GPU)和数字信号处理器(DSP)。现在许多企业寻求运用现场可编程门阵列(FPGA),由于FPGA是一种高度并行的架构,并且功耗相对较低。赛灵思的新款SDAccelTM开发环境为开发人员供给了一种了解的CPU或相似CPU的环境,防止编程给FPGA在此类运用中运用时形成的妨碍。

改进功用功耗比

Amazon Web服务、Google Compute、MicrosoftAzure和我国的百度等公有云具有巨大的图片库,需求极快的图画辨认才干。在一个完结计划中,谷歌科技人员将16,000个核算机处理器衔接为一个实体,创立出了一个极为巨大的机器学习神经网络,然后投放到互联网上,让其自主学习。这项研讨是新一代核算机科学的代表。这一代核算机科学以充分运用大型数据中心中的很多核算机集群的运算才干为方针。潜在运用包括让图画查找、语音辨认和机器言语翻译才干迈上新的台阶。可是对数据中心规划而言,仅依托充分运用CPU并非是一种高能效的做法。要进步速度、下降功耗,还需求其他处理计划。

我国最大的查找引擎百度借助于深度神经网络处理技能来处理语音辨认、图画查找和自然言语处理方面的问题。百度敏捷断定,如果在在线猜测中运用神经网络反向传达算法,FPGA处理计划在下降功耗的一起,还能以比CPU/GPU简洁得多的办法进行扩展[2]。

因在数据中心服务器的主机卡和线路卡中集成了FPGA,新一代28nm和20nm高集成度FPGA系列(如赛灵思7系列和UltraScaleTM器材)正在改动数据中心动态开展情况。功用功耗比可以轻松到达CPU/GPU的20倍以上,一起在某些运用中与传统CPU比较,时延可下降50至75倍。

可是对FPGA硬件资源有限或缺少的开发团队而言,由于需求运用RTL(VHDL或Verilog)开发专业知识才干充分发挥FPGA的功用优势,因而过渡到FPGA难度较大。为处理这一问题,赛灵思已引进敞开核算机语音(OpenCLTM)作为减轻编程担负的办法。

OpenCL代码移植性

由苹果公司开发并经Khronos集团推行的OpenCL[3]有助于异构规划中的CPU、GPU、FPGA和DSP模块集成。为增强用于编写可在异构渠道上运转的程序的OpenCL结构,赛灵思等业界抢先的CPU、GPU和FPGA厂商都在为这种语音及其API的开发做出尽力。

SDAccel编译器相对CPU功用进步10倍,且功耗仅为GPU的1/10。

OpenCL被CPU/GPU/FPGA厂商、服务器OEM厂商以及数据中心管理人员等日益广泛地承受,阐明各方都现已认识到一个严峻的实践:用于单处理器架构的C言语编译器在服务器机架内部只能完结小幅整体功耗下降,即便是在处理器选用低于20nm的工艺技能并增加特别省电状况后仍然如此。

OpenCL是一种用于编写可在由CPU、GPU、DSP、FPGA及其它处理器构成的异构渠道上运转的程序的结构。OpenCL包括根据C99的编程言语和运用编程接口(API),以操控渠道和在方针器材上履行程序。OpenCL运用根据使命和根据数据的并行机制供给并行核算功用。

针对OpenCL的赛灵思SDAccel开发环境

在开发特定范畴规范描绘环境方面,赛灵思有近十年的作业经验。数据中心管理人员和服务器/交换机OEM厂商对数据中心功用的忧虑,迫使开发环境向一致环境方向纵向开展,以在数据中心运用中完结规划优化。在此情况下,一种用于运用加快的OpenCL开发环境―SDAccelTM―应运而生。

最新赛灵思SDAccel环境(如图1所示)为数据中心运用开发人员供给完好的根据FPGA的硬件和OpenCL软件。SDAccel内含一个快速且架构优化编译器,能高效运用片上FPGA资源以及用于代码开发、特性剖析和调试的根据Eclipse集成规划环境(IDE)的了解软件开发流程。该IDE可供给相似CPU/GPU的作业环境。

此外,SDAccel运用赛灵思的动态可重装备技能,可供给针对将即时换入换出的不同运用优化的加快器内核。这些运用可以在运转时间内将多个内核换入或换出FPGA,且不会给服务器CPU和用于继续运用加快的FPGA之间的接口形成扰动。

图1 – SDAccel环境包括架构优化编译器、库、调试器和剖析器,可供给相似CPU/GPU的编程体会。

开发人员运用SDAccel的架构优化编译器可优化和编译流、低推迟定制数据途径运用。SDAccel编译器支撑运用C、C++和OpenCL恣意组合的源代码,首要面向赛灵思高功用FPGA器材。SDAccel编译器与高端CPU比较,功用进步10倍,功耗仅为GPU的1/10,一起坚持代码兼容性和传统软件编程形式,便于运用移植并有助于下降本钱。

图2C运用OpenCL言语为CPU、GPU和FPGA架构编写的视频处理算法在FPGA上运转速度更快

(Auviz运用AuvizCV库完结的基准测验)

SDAccel是仅有根据FPGA的开发环境,内含各种用于运用加快并针对FPGA优化的库。该库包括OpenCL内置函数、恣意精度数据类型(定点)、浮点、math.h、视频、信号处理和线性代数函数。

在比如带有杂乱嵌套数据途径(nested datapath)的视频处理等实践核算作业负载上,FPGA架构的内涵灵活性使其相关于CPU和GPU固定架构而言,在功用和功耗方面具有显着的优势。如图2中所示的基准测验结果表明,SDAccel编译的FPGA处理计划在功用上逾越相同代码的CPU完结计划,并供给可与GPU完结计划相媲美的杰出功用。

双方滤波器和Harris角点检测器均运用规范的OpenCL规划形式编码,运用器材的全局存储器在内核之间传输数据。SDAccel生成的FPGA完结计划经过创立片上存储器组供高带宽存储器传输和低时延核算运用,可到达优化存储器拜访的意图。创立和运用这些专用存储器组代表SDAccel编译器的部分架构感知功用。

软件作业流

FPGA一向有望逾越CPU和GPU完结计划,具有更高的算法功用以及更低的功耗规模。但直到现在由于编程形式,未能如愿以偿。而这一编程形式又是有用运用FPGA所有必要的。SDAccel支撑具有体系内即时可重装备功用的软件作业流,能最大化数据中心的硬件加快ROI,然后战胜这一妨碍。SDAcce是一种共同而完好的根据FPGA的处理计划,他的功用和简洁易用性远远超远竞争对手的东西。更多概况,敬请拜访下列网站:http://china.xilinx.com/products/design-tools/sdx/sdaccel.html。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/yingjian/288975.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部