硬件加速器为人工智能应用服务

硬件加速器为人工智能应用服务

Hardware accelerators serve AI applications

硬件加速器(Hardware accelerators)是用于执行特定任务(如对对象进行分类)的专用设备,越来越多地嵌入到为各种人工智能应用服务的片上系统(SoC)中。有助于创建紧密集成的定制处理器,提供更低的功耗、更低的延迟、数据重用和数据局部性。             

首先,有必要对人工智能算法进行硬件加速。人工智能加速器是专门为加速人工智能任务而设计的;以传统处理器无法实现的方式执行特定任务。             

此外,没有一个处理器能够满足人工智能应用的多样化需求,这里,集成到人工智能芯片中的硬件加速器为特定的工作负载提供了性能、电源效率和延迟优势。这就是为什么基于人工智能加速器的定制架构开始挑战人工智能应用程序中cpu和gpu的使用。             

人工智能芯片设计者必须决定加速什么,如何加速,以及如何将这些功能与神经网络互连。下面是一个关键行业趋势的快照,这些趋势定义了硬件加速器在不断发展的人工智能工作负载中的使用。不可避免的是,开始于可集成到各种人工智能芯片和卡上的人工智能加速器。

AI accelerator IPs

AI加速器IPs              

硬件加速器广泛应用于人工智能芯片中,用于分割和加速数据密集型任务,如计算机视觉和深度学习,用于训练和推理应用。这些神经网络加速了神经网络的运转。             

Gyrfalcon Technology Inc.(GTI)设计AI芯片,并通过IP许可模式为定制SoC设计提供AI加速器。总部位于加州米尔皮塔斯的人工智能新贵分别为边缘和云应用提供了Lightspeeur2801和2803人工智能加速器。             

值得注意的是,Gyrfalcon还围绕这些硬件加速器开发了AI芯片,这使得这些AI加速器IPs硅得到了验证。该公司用于edge设计的2801 AI芯片每瓦特(TOPS/W)每秒可执行9.3 tera操作,而其用于数据中心应用的2803 AI芯片可提供24 TOPS/W。             

除了IP开发工具和技术文档外,Gyrfalcon还为AI设计师提供了用于模型创建、芯片评估和概念验证设计的USB3.0软件狗。许可证持有者可以在Windows和Linux个人电脑上使用这些软件狗,也可以在像Raspberry Pi这样的硬件开发工具包上使用这些软件狗。

Hardware architecture

硬件体系结构             

人工智能加速器的基本前提是处理算法的速度比以往任何时候都要快,同时尽可能少用电。在边缘、数据中心或两者之间的某个地方执行加速。AI加速器可以在ASIC、GPU、FPGA、DSP或这些设备的混合版本中执行这些任务。             

这就不可避免地导致了一些硬件加速器架构,针对机器学习(ML)、深度学习、自然语言处理和其人工智能工作负载进行了优化。例如,一些ASIC被设计为运行在深度神经网络(DNNs)上,而DNNs又可以在GPU或其ASIC上进行训练。             

人工智能加速器架构的关键在于人工智能任务可以大规模并行。此外,人工智能加速器的设计与多核实现交织在一起,这突出了人工智能加速器体系结构的关键重要性。             

下一步,人工智能的设计通过增加越来越多的专门用来提高神经网络效率的加速器,将算法分割得越来越细。用例越具体,就越有机会细粒度地使用多种类型的硬件加速器。             

这里,值得一提的是,除了集成到定制芯片中的人工智能加速器之外,加速卡也被用于提高云服务器和内部数据中心的性能和减少延迟。例如,与cpu相比,Xilinx公司的Alveo加速卡可以从根本上加速数据库搜索、视频处理和数据分析(图1)。

1:Alveo U250加速卡与高端CPU相比,实时推理吞吐量提高了20倍,与固定功能加速器(如高端GPU)相比,亚2毫秒延迟降低了4倍以上。             

可编程性             

在人工智能设计中有很多动态变化,因此,软件算法的变化比人工智能芯片的设计和制造要快。强调了硬件加速器面临的一个关键挑战,在这种情况下,往往会变成固定功能的设备。             

因此,加速器中必须有某种可编程性,使设计者能够适应不断变化的需求。可编程特性带来的设计灵活性也允许设计人员处理各种各样的人工智能工作负载和神经网络拓扑。             

英特尔公司(intelcorp.)以约20亿美元的价格收购了以色列一家可编程深度学习加速器(programmableddeeplearningaccelerators)的以色列开发商,从而回应了人工智能设计可编程性的呼吁。Habana的Gaudi处理器用于训练,Goya处理器用于推理,提供了一个易于编程的开发环境(图2)。

2:这是开发平台和工具如何使用Gaudi训练加速器加速AI芯片设计。

AI在边缘             

现在很明显,人工智能推理的市场比人工智能训练要大得多。这就是为什么业界正在见证各种各样的芯片被优化,以适应从训练到推理的各种人工智能工作负载。             

这将微控制器(MCU)带入人工智能设计领域,而人工智能设计通常与强大的SOC相关联。这些MCU整合了人工智能加速器,为资源受限的工业和物联网边缘设备提供服务,如目标检测、面部和手势识别、自然语言处理和预测性维护。             

Arm的Ethos U-55 microNPU ML加速器为例,NXP半导体公司正在将其集成到基于Cortex-M的微控制器、交叉MCU和应用处理器中的实时子系统中。Ethos U-55加速器与Cortex-M核心协同工作,以实现较小的占地面积。先进的压缩技术节省了能量,并显著减少了ML模型的大小,从而使以前只在较大系统上运行的神经网络能够执行。             

NXP的eiqml开发环境为AI设计者提供了一个开源推理引擎的选择。根据具体的应用需求,这些AI加速器可以被集成到各种计算元素中:cpu、gpu、dsp和npu。

posted @ 2020-07-08 16:30  吴建明wujianming  阅读(802)  评论(0编辑  收藏  举报