FPGA有什么优势,什么样的场景更适合FPGA

可编程逻辑

1339人已加入

描述

(文章来源:安防知识网)

目前,在AI计算平台使用最广泛的两种加速部件是GPU和FPGA。GPU可适用于具备计算密集、高并行、SIMD(SingleInstructionMultipleData,单指令多数据流)应用等特点的深度学习训练模型领域,并且GPU创建了包含CNN、DNN、RNN、LSTM以及强化学习网络等算法在内的应用加速平台和生态系统。

但是,最近FPGA又频频被各AI领域的巨头看好,比如微软、百度、科大讯飞都对FPGA应用前景有所期待。那么如果让你选择FPGA作为AI计算系统的主力军,你会有什么样的顾虑?

首先,深度学习包含两个计算环节,即训练和推理环节。GPU在深度学习算法模型训练上非常高效,但在推理时对于小批量数据,并行计算的优势不能发挥出来。而FPGA同时拥有流水线并行和数据并行,因此处理任务时候延迟更低。

例如处理一个数据包有10个步骤,FPGA可以搭建一个10级流水线,流水线的不同级在处理不同的数据包,每个数据包流经10级之后处理完成。每处理完成一个数据包,就能马上输出。通常来说,FPGA加速只需要微秒级的PCIe延迟。当Intel推出通过QPI快速通道互联的Xeon+FPGA之后,CPU和FPGA之间的延迟甚至可以降到100纳秒以下。

其次,FPGA是可编程芯片,算法烧录更加灵活。目前来看,深度学习算法还未完全成熟,算法还在迭代衍化过程中,若深度学习算法发生大的变化,FPGA是软件定义硬件,可以灵活切换算法,快速切入市场。

未来至少95%的机器学习计算都是用于推断,只有不到5%是用于模型训练,而FPGA正是强在推断。大幅提升推断效率的同时,还能最小限度损失精确性,这正是FPGA的强项。与CPU和GPU不同,FPGA是一种典型的非诺依曼架构,是硬件适配软件的模式,它能够根据系统资源和算法特征灵活的调整并行度,达到最优的适配,因此能效比高于CPU和GPU。

以浪潮F10A为例,这是目前业界支持OpenCL的最高密度最高性能的FPGA加速设备,基于Altera的Arria10芯片,单芯片峰值运算能力达到了1.5TFlops,功耗却只需35W,每瓦特性能达到42GFlops。同时,F10A设计为高密度的半高半长PCI-E插卡,同时具有灵活的板卡内存配置,最大支持32G双通道内存,是业内同等FPGA卡内存容量的4-8倍。此外,F10A支持2个10Gb光口,可以实现数据直接从网络到板卡处理,无需经过CPU,大大减低了传输延时。

测试数据显示,在语音识别应用下,浪潮F10A较CPU性能加速2.87倍,而功耗相当于CPU的15.7%,性能功耗比提升18倍。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分