您的位置 首页 厂商

Xilinx SDAccel:为数据中心带来最佳单位功耗功能

引言数据中心运维人员总是不断在寻求更高的服务器性能。目前,他们主要是通过易于编程的多核CPU 和GPU 来开发应用,但CPU 和GPU 都遇到了单位功耗性能的瓶颈壁垒。从事海量数据中心应用开发(如密

导言

数据中心运维人员总是不断在寻求更高的服务器功用。现在,他们首要是经过易于编程的多核CPU 和GPU 来开发运用,但CPU 和GPU 都遇到了单位功耗功用的瓶颈壁垒。从事海量数据中心运用开发(如密钥加快、图画辨认、语音转录、加密和文本查找等)的规划人员既期望GPU 易于编程,一同又期望硬件具有低功耗、高吞吐量和最低时延功用。但是,多核CPU和GPU 加快器在可扩展性上存在严峻的问题:客户期望用简略的全高度刺进式PCIe 开发板作为数据中心服务器的运用加快器。这种开发板经装备可运转高功率图形卡,但客户一同期望功耗不超越25W,以便最大化可扩展性并最小化总功耗。

最近赛灵思同瑞士苏黎世联邦理工学院(ETH Zurich)联合展开的一系列研讨发现,依据FPGA 的运用加快想比CPU/GPU完成计划,单位功耗功用可提高25 倍,而时延则缩短了50 到75 倍,与此一同还能完成超卓的I/O 集成(PCIe、DDR4SDRAM 接口、高速以太网等)。换言之,FPGA 能在单芯片上供给高能效硬件运用加快所需的中心功用,并一同供给每个开发板方针功耗低于25W 的的解决计划。

我国网络服务抢先企业百度公司在美国加州圣何塞举办的2014 年抢手芯片研讨会上介绍了支撑性调查成果。百度的定论

如下:

• 中端FPGA 能够完成375 GFLOPS 的功用,功耗仅为10-20W

• 依据FPGA 的加快器可布置在一切类型的服务器中。

• 和CPU 和GPU 比较, FPGA 在深度神经网络(DNN)猜测体系中功用愈加超卓。DNN 体系用于言语辨认、图画查找、OCR、面部辨认、网页查找以及自然言语处理等各种不同运用。

FPGA 大幅提高了硬件加快的单位功耗功用。

FPGA 用于运用加快的最大问题在于编程。数据中心运用开发人员不期望选用以硬件为中心的RTL 流程,也便是传统FPGA的开发途径。他们所需求的是:

• 单位功耗功用更高

• 彻底软件的开发环境

• 易于晋级的规划

推出全新赛灵思SDAccel 环境

全新的赛灵思SDAccel 开发环境为数据中心运用开发人员供给了他们所需求的完好的FPGA 软硬件解决计划。SDAccel 包含可高效运用片上FPGA 资源的快速的、架构优化的编译器;了解的软件开发流程—— 其带有用于代码开发、特性剖析与调试的Eclipse 集成规划环境(IDE),可供给相似于CPU/GPU 的作业环境;以及针对不同数据中心运用而优化的动态可重装备加快器,能在相似CPU/GPU 运转时刻环境中即时替换。运转过程中运用能让不同处理模块在FPGA 中即时替换,且不会搅扰服务器CPU 和FPGA 之间的衔接,完成不间断的运用加快。

SDAccel 环境包含架构优化的编译器、库、调试器和剖析器,并供给相似于CPUGPU的编程体会。

SDAccel 结合业界首款架构优化编译器、库和开发板,是仅有能在FPGA 上供给相似于CPU/GPU 的开发和运转时刻体会。SDAccel 开发环境面向依据X86 服务器处理器的主机体系,并可供给现成的商用(COTS)PCIe 插卡,用于添加FPGA 功用。

职业首款面向C、C++ 和OpenCL 的架构优化编译器

SDAccel 的架构优化编译器使软件开发者能够优化并编译流媒体、低时延以及定制数据途径运用。SDAccel 编译器首要针对高功用赛灵思FPGA 并支撑OpenCL,C 和C++ 恣意组合的源代码。SDAccel 编译器比较高端CPU 功用提高达10 倍,而功耗仅为GPU 的1/10,一同能坚持代码的兼容性和一个传统的软件编程形式,以便于运用移植并节省本钱。依据客户基准,SDAccel 编译器比较同类竞赛FPGA 解决计划,功用和资源功率均提高了3 倍。SDAccel 编译器主动生成的规划乃至比手动编码的RTL 规划计划的功用还高,在某些状况下可高出20% 之多。

架构优化的SDAccel 编译器能够主动对运用源代码施行一系列根底乃至高档的优化计划。下表列出了SDAccel 编译器针对加快运用所进行的一系列优化。

SDAccel 编译器针对加快运用所进行的一系列优化。

其间一些主动优化能大幅提高全体运用的功率。举例来说,SDAccel 编译器的数据流流水线功用可对多个功用进行流水线化,而不会局限于仅能对单一功用进行优化。该编译器的存储器优化功用能极大地提高成效,然后让你能够在FPGA 中添加更多功用。SDAccel 是首款面向FPGA 渠道的彻底软件的开发环境,可完成相似于CPU/GPU 的开发体会。开发人员能用了解的作业流程优化运用,并且即使很少或许没有FPGA 运用经历,也能获益于FPGA 的渠道优势。集成规划环境(IDE)不只可供给编码模板和软件库,并且还支撑在x86 渠道上进行编译、调试、特性剖析和FPGA 仿真。准备好布置后,IDE 能在配有主动仪器刺进功用的数据中心用现成的商用 FPGA 渠道上完成算法。

SDAccel 还经过精心构建,使CPU/GPU 开发人员能够轻松将其运用移植到FPGA 上,一同还可在了解的作业流程中保护和复用OpenCL、C 和C++ 代码。很多代码和库选用C 和C++ 格局。关于期望选用其现有代码库中的不同代码, 或许选用第三方代码库,乃至持续组合运用C、C++ 或OpenCL 进行开发的开发者来说,能用C、C++ 或OpenCL 作业是最大的便当。

SDAccel 环境配套供给面向程序员的Eclipse IDE 以及一系列依据C 言语的FPGA 优化库和数据中心用现成商用渠道。Convey Computer、Alpha Data Parallel Systems 和Pico Computing 公司可供给数据中心用加快板卡。2015 年年头还将添加更多商用现货(COTS)协作伙伴。SDAccel 库包含内置OpenCL 函数、DSP、视频和线性代数库,能支撑高功用低功耗完成计划。针对特定范畴加快,赛灵思联盟协作成员Auviz Systems 公司还供给优化的 OpenCV 和BLAS SDAccel 兼容库。

SDAccel :面向程序员的开发渠道

运用开发人员彻底能在X86 仿真空间开端运用SDAccel 使其代码开端作业。一旦其坚信其算法开发人员就能对代码进行特性剖析,找到获益于加快的代码片段。然后开发人员就能够运用这些有针对性的片段,无缝选用快速主动生成的周期准确内核仿真,然后完成加快。这些快速仿真可用来调试和优化加快量,一同能在架构层面作业。业经历证的运用能方便地移植到主机/FPGA 体系。SDAccel 开发环境可支撑一切这些来自同一控制中心(cockpit)的活动。

SDAccel 库对SDAccel 相似CPU/GPU 的开发体会发挥了重要作用。这些库包含底层数学库以及BLAS、OpenCV 和DSP 等高生产力库。这些库用C++(而不是用RTL)编写,因而在一切开发和调试阶段都能彻底像编写相同运用。在项目前期阶段,一切开发作业都在CPU 主机上进行。因为SDAccel 库用C++ 言语编写,因而能与CPU 方针的运用代码一同编译,创立虚拟规划原型,让一切测验、调试和初始特性剖析作业在主机上进行。在此阶段无需FPGA。

一旦运用经过初始调试和特性剖析,需求硬件加快的要害功用可经过编译完成协同仿真,加快功用运转在依据CPU 的RTL仿真器上。这时,软件开发团队可观察所得的功用,确认运用能否满意功用方针要求。RTL 仿真能准确给出FPGA 硬件加快的功用状况,这就能让开发团队得到很好的功用预算,并且能高度保证所得的FPGA 装备能准确重现运用源代码的行为和成果。

加快功用随后可迁移到FPGA 上,生成最终的加快运用,可用于布置。SDAccel 编译器不是创立通用FPGA 装备,而是在编译时针对特定的赛灵思FPGA,包含器材速度等级,这样所得的加快功用就能针对FPGA 上的可用资源以及器材时序进行优化。在这时咱们乃至还能测验功用,这对功用不会形成影响,硬件开支极低,并且还能在相同了解的SDAccel 开发环境中进行更多后期特性剖析,以便充分运用FPGA 硬件,全面最大化运用加快作用。

CPU 级特性剖析能发现运用瓶颈。协同仿真将告诉您这些瓶颈是否现已被加快特定功用消除去。在FPGA 上对硬件加快功用进行特性剖析能完成更多优化,进一步优化运用代码和加快功用。在任何时刻以及各个阶段中,SDAccel 编译器都可挑选性地检测运用代码,包含加快功用,这就意味着调试和特性剖析能够以相同方法进行,并且不管开发作业进入到哪个阶段,都可用运用同一软件开发东西。

在FPGA 上初次带来相似CPU/GPU 的运转时刻和晋级体会

SDAccel 可供给支撑实时相似CPU/GPU 运转时刻晋级的仅有FPGA 动态可重装备加快器。SDAccel 关于FPGA 解决计划的共同之处在于其运用仅有的FPGA 动态重装备功用可在内核晋级时坚持体系持续运转,这不只可加载新的硬件加快器内核(这一点与CPU/GPU 加快器的功用相似),一同还能坚持要害的体系接口和功用(如存储器、以太网、PCIe 和功用监控器)持续发挥作用。这种即时的体系重装备功用抱负适用于数据中心核算需求及负载的当即更新。这种运用的一个实例便是图画查找、视频转码和图画处理等功用的即时切换,然后带来战略性优势。

可重装备加快器支撑快速硬件加快改变,能最大化加快器出资报答

一切这些都能经过硬件重用转换为资源优化,这在数据中心环境中是一大优势。简而言之,依据SDAccel 的体系现在能加快运用,而假如未来需求别的一种类型的加快,体系能快速顺畅地完成晋级。

开发者能够办理和运转依据SDAccel 的体系就像在CPU/GPU 体系相同。运用SDAccel 和硬件快速动态重装备功用,咱们乃至能在运用运转中重用FPGA。这种功用使得咱们能用相同的FPGA 板卡履行不同的内核加快,硬件可针对不同的算法进行从头优化,且不会约束或中止运用流程。经过支撑动态重装备,SDAccel 能让数据中心运维人员最大极限地发挥硬件加快出资价值。

实实在在的规范测验可证明SDAccel 的功用和价值

SDAccel 经过了具有实践规范测验的业界验证。举例来说,在紧缩规范测验中,SDAccel 生成的硬件加快器比同类竞赛东西生成的加快器速度高3 倍多,尺度小3 倍。占位面积及吞吐量与手动优化的RTL 完成计划势均力敌乃至更优异。

用两个加快器测验规范比较手动编码的RTL、SDAccel 以及市场上相似计划生成的成果

在上述的加密规范测验中,SDAccel 生成的硬件加快器比同类竞赛东西生成的加快器速度快1.2 倍,而面积小4 倍。更棒的是,SDAccel 主动生成的加快器比用RTL 手动编码生成的加快器还快20%。SDAccel 开箱即用,可直接编加快器,并且QOR(成果质量)与手动编码成果质量势均力敌,乃至更胜一筹。

定论

SDAccel 可满意数据中心运用开发人员的需求,包含供给相似CPU/GPU 的作业环境,其生成的高效硬件加快器可完成最佳单位功耗功用,远胜于运转在CPU/GPU 上的加快器。SDAccel 经过带有体系内即时可重装备功用的单个控制中心环境(cockpit environment)支撑软件作业流程,最大化数据中心硬件加快出资报答。因而,SDAccel 是一种共同而完好的FPGA解决计划,其易用性和功用远超同类竞赛性东西。这些同类竞赛性东西不能供给高生产力作业流程,也不能供给了解的环境,加快器功用更不能与SDAccel 主动生成的硬件加快器混为一谈。

SDAccel 为硬件加快供给共同而完好的FPGA 解决计划

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

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

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

微信扫一扫关注我们

返回顶部