AI推理走向通用应用,“周易”X2 NPU助力生态繁荣
扫描二维码
随时随地手机看文章
据安谋科技统计,过去一年中国有60个用到了NPU的芯片项目,而其中55%的都是选择了自研NPU。自研NPU也就意味着软件工具链也都各有所不同,因此在AI应用的推理侧,有着非常严重的碎片化的现象。为了解决这种NPU硬件碎片化问题,加速NPU生态发展,安谋科技近日发布了其最新的”周易“X2 NPU产品。凭借着可拓展的算力架构、自定义的算子、大模型优化架构以及开放的Compass软件平台,“周易”X2 NPU不是为了单独解决某一个问题、或者某一个应用痛点而来,而是为了解决全行业的端侧AI推理难题,助力AI走入通用应用层面。
“周易”X2 NPU——适用多类型端侧推理,兼具高效低耗
“无论是手持终端设备、汽车应用场景还是像现在十分火热的GPT和边缘侧高性能计算场景,对于人工智能的算力要求是成倍提升的。”安谋科技产品总监杨磊分享到。手机上的算力已经达到了30TOPS,PC上也有了45TOPS的高算力方案推出,而在汽车上已经有了几百TOPS的算力需求;像Chat-GPT这样的大模型对于算力的需求更是以成倍增加。安谋科技最新发布的“周易”X2 NPU,就能够很好地解决以上这些场景中的算力难题。
据悉,“周易”X2 NPU是基于安谋科技最新的“周易”V3架构指令集,相比前代产品有了非常多的性能提升。首先是在算力上,能够支持实现320TOPS的子系统的算力。第二是通过i-Tiling技术,大幅减少带宽需求,进一步提升计算效率,从而大幅降低系统的成本。第三是实时任务调度,通过专门的硬件加速调度器来做实时的任务调度和管理,从而满足汽车等高实时性的应用场景。第四是支持混合精度计算,包括定点计算、整数型计算和浮点计算,并且可以很好地平衡整体功耗、计算密度和计算精度。第五是专门优化的Transformer性能,针对图像处理等进行了专门的优化。第六是增加了无损的权重压缩的技术,实现了带宽的节省。第七是针对手持电池供电设备进行了低功耗优化,在7nm节点能够做到10TOPS/w的能效。第八是针对手机拍照中的AI降噪、视频超分插帧等进行了专门的优化。
据安谋科技执行副总裁、产品研发负责人刘澍介绍,“周易”X2 NPU第一个瞄准的是汽车市场。而在此次发布会上,安谋科技也展示了一个面向汽车场景的320TOPS参考方案。在一个子系统中集成了四个Cluster,每个Cluster中集成了4个核和Cluster Management。
与国际上比较通用的汽车SoC对比,在跑Swin-Transformer,采用相似的MAC数量的前提下,“周易”X2可以实现最高260%的性能优势。除了一些MAC配置比较重的算子外,安谋科技还针对了Softmax、instance Normalization、Layer Normalization、Slice、矩阵运算等都进行了合理优化,才能达到这个实测结果。
而针对移动端场景,安谋科技展示了一个对标业界旗舰手机的30TOPS方案,在一个X2 Cluster中集成了三个核,提供了AI降噪、视频超分等专门的优化。在与其他旗舰SoC的对比中,“周易”X2 SoC可以实现同样的精度水平,但在MobileNet、UNET、YOLO等典型网络中能提供更好的性能优势。
而除了上述展示的分别汽车和移动端这两大类应用场景的子系统外,刘澍还表示“周易”X2 NPU可以满足更高算力的边缘服务器类的应用需求,未来还会推动针对新兴领域的高性能子系统开发,希望把“周易”X系列NPU推向更多大算力的领域,不断地发展。
第三代“周易”架构——并行、可拓展和软硬件耦合
为什么“周易”X2 NPU有这么好的弹性,能够实现从几十TOPS到几百TOPS的算力拓展,而且还都兼顾了很好的能效比?这背后的奥秘就来自其最新的第三代“周易”架构,以及与Compass软件平台的紧密耦合。
“周易”X2 NPU的计算核心分为两个大的部件,一个是可编程、灵活的单元,采用了VLIN架构,负责通用向量处理;另一个是专门负责Tensor处理的、集合了多种高不同种类算子的加速单元;两者有机地结合在一起构成了一个基本的NPU核,多个NPU的核可以进一步组成Cluster,多个Cluster进一步还可以继续拓展。
一个Cluster中的拓展除了两部分计算单元外,还需要高带宽的内部NoC、Debug单元、电源管理单元以及内部的Memory,构成一个计算的Cluster。TSM(Task Scheduling Manager)是一个关键部件,可以将计算任务调度到合适的核或Cluster上。
另一个优势在于,“周易”架构能做到高效能AI固定运算和灵活编程要求的有效平衡。安谋科技开发了很多高效能的NN算子,可供客户直接调用;而且提供了很多可重配置的结构单元,来适配客户的更多新算子。还开发了专门的NN Compiler,整合了i-Tiling的技术节省带宽。从底层软件、到中间部件,包括runtime、IDE、Simulator等都在“周易”Compass软件平台上实现了整合,而且安谋科技还提供了界面友好的OpenCL Compiler,通过一次编程个就可以将多类运算单元整合起来。在顶层,安谋科技定义了一套套Compass IR的公开标准接口,将IR直接对接到上层神经网络或底层硬件。此外,“周易” V3架构中还有一个核心部件是量化部件,可以把各种浮点的原始模型量化到合适精度,在NPU上进行最高效的运行。
据安谋科技NPU研发高级总监孙锦鸿介绍,“周易”架构已经发展到第三代,设计思路上遵行“并行”和“可拓展性”,在同构和异构的单元中得到统一。整个“周易”NPU的设计核心思想在指令和数据处理单元的同构计算里做到了最大并行。如果在异构上,可以把数据的Channel和Batch、甚至异构算子做成并行,在同构和异构的单元里得到统一。在此基础上扩展的核和Cluster,通过不同颗粒度的并行性来体现到整个“周易”架构的强扩展性。虽然“周易”V3架构的扩展维度很多样,但都可以通过统一的OpenCL界面把不同扩展性的计算单元,不同的核通过统一的编程方式进行统一编程,提供较好用户体验。
在“周易”V3架构上,提供了专门针对图优化的策略,结合Transpose合成,通过相同/类似算子融合,可以大大减少处理流水线,从而减少带宽,提高运算效率。在发布会现场展示了一个车载的处理模型,通过“周易” Compass软件平台:做了8bit的量化,再做了图优化,之后再放到IP里面运行,最后实时输出分割后原生的图像结果。这一模型的运算复杂度比传统CNN模型更为复杂,同时精度上也会更好。
孙锦鸿表示,“周易”V3架构的研发的最难点在于如何把易用性、可编程性或最有效地把软件迁移到“周易”的产品上,做到软硬件的平衡。要实现这一难题,安谋科技在“周易”架构上提供了支持统一编程的OpenCL界面、Primitive(原语)方法实现高效算子整合、支持TVM的统一框架实现与CPU、GPU的异构联动,从而让其最终得以实现如此好的软硬件协同。
NPU生态的构建和意义
目前端侧的AI推理应用,尚处在发展阶段,因此在NPU硬件生态上呈现出碎片化的现状。据安谋科技调研,去年中国包含NPU的项目有60个左右,其中就出现了接近40种方案。每换一个硬件平台,也就意味着整个软件工具链的改变,这对于需要切换软硬件平台的应用开发者而言及其复杂。“怎样能在推理侧使生态更加友好,尤其是对于软件开发者、应用开发者更加友好,可以让他们更加方便、快捷地进行应用的开发和部署,是安谋科技一直在深入思考的问题。”杨磊分享到。
NPU的软件移植流程通常包括以下几个步骤:浮点模型训练好之后,要针对硬件进行定点的量化,最终变成可执行的代码;代码还需要在软件仿真平台和硬件开发板上进行测试,最终部署到硬件上。在这个开发的过程中,越是以算法和数据为核心的合作伙伴,越有强烈的软件工具链白盒的诉求。
基于此行业痛点,安谋科技推出了“周易”NPU软件开源计划。该计划包括了几个部分:第一是实现了“周易”中间表示层的开放,第二是免费授权“周易”V3架构,鼓励自研NPU实现“周易”架构兼容。
中间表示层指的是一个非常重要的抽象层级,在底层的细粒度的指令之上,类似于高级指令集。这是一个比较大粒度的抽象层级,简称为IR,安谋科技实现了IR层的整个规范的全面开源,从而满足了开发者在应用移植和部署过程中对于白盒开发的需求。“即使是做自研NPU的合作伙伴,周易开源计划也可以帮助到他们节省约50%的软件工作量。”杨磊分享到,“而对于上层的算法开发者而言,开源的好处是给了他们一个较为统一硬件方案。”
此前Arm就围绕着CPU IP进行了一些开源项目的尝试,而此次安谋科技的“周易”软件开源计划,是其整个生态伙伴计划的重要组成部分。据悉,安谋科技的全部自研产品,包括“周易”NPU、“山海”SPU、“星辰”CPU、“玲珑”ISP、VPU等都可以提供给生态伙伴,透过TVM的设计和Compass平台,就能让“周易”NPU跟Arm其他CPU、GPU结合起来,形成合理的异构运算调度。而且这个合作伙伴的定义不仅局限于芯片设计客户,也包括上下游所有的参与者。譬如汽车应用而言,包括OEM、Tier1、Tier2、软件开发者和创新设备商等都属于生态参与者的一部分。
结语
随着ChatGPT的兴起,大模型让AI走入通用应用,AI将会成为一种基础的计算支持,成为赋能各种应用升级的沃土。而大模型、多模态输入等对于算力的要求越来越高,走入通用后的端侧的硬件碎片化问题,都是当下端侧NPU发展的挑战。安谋科技的“周易”X2 NPU推出,有望解决这一挑战,并且真正实现NPU生态的繁荣。
刘澍表示,安谋科技将一直坚持“本土创新、全球标准”的理念,不断完善自研产品矩阵,和Arm IP形成优势互补,通过这样的方式满足本土客户需求,发挥本土资源能力,支持产业繁荣发展。