随着深度学习领域[1-4]带来的技术性突破,人工智能(artificial intelligence,AI)无论在科研还是在产业应用方面都取得了快速的发展。深度学习算法需要大量的矩阵乘加运算,对大规模并行计算能力有很高的要求,CPU和传统计算架构无法满足对于并行计算能力的需求[5],需要特殊定制的芯片。目前,AI芯片行业已经起步并且发展迅速[6]。
1.AI芯片定义及技术架构
1.1AI芯片定义
广义上所有面向AI应用的芯片都可以称为AI芯片。目前一般认为是针对AI算法做了特殊加速设计的芯片。现阶段,这些人工智能算法一般以深度学习算法为主,也可以包括其他浅层机器学习算法[7-8]。
1.2AI芯片功能
(1)训练。对大量的数据在平台上进行学习,并形成具备特定功能的神经网络模型。对AI芯片有高算力、高容量和访问速率、高传输速率、通用性的要求。
(2)推理。利用已经训练好的模型通过计算对输入的数据得到各种结论。对于AI芯片主要注重算力功耗比、时延、价格成本的综合能力。实验证明低精度运算(如float16,int8)可达到几乎和float32同等的推理效果,所以AI推理芯片有低精度算力的要求。
1.3技术架构
表1列出了AI芯片的几种技术架构,并对其优缺点进行比较。
表1.AI芯片技术架构
2.AI芯片应用场景
2.1数据中心(IDC)
用于云端训练和推理,目前大多数的训练工作都在云端完成[9]。移动互联网的视频内容审核、个性化推荐等都是典型的云端推理应用。NvidiaGPU在训练方面一家独大,在推理方面也保持领军位置。FPGA和ASIC因为低功耗、低成本的优势,在持续抢夺GPU的市场的份额。
云端主要的代表芯片有Nvidia-TESLAV100、华为昇腾910、Nvidia-TESLAT4、寒武纪MLU270等。
2.2移动终端
主要用于移动端的推理,解决云端推理因网络延迟带来的用户体验等问题。典型应用如视频特效、语音助手等。通过在手机系统芯片(systemonchip,SoC)中加入增加协处理器或专用加速单元来实现。受制于手机电量,对芯片的功耗有严格的限制。代表芯片有AppleA12 Neural Engine(加速引擎)和华为麒麟990。
2.3安防
目前明确的AI芯片应用场景,主要任务是视频结构化。摄像头终端加入AI芯片,可以实现实时响应、降低带宽压力。也可以将推理功能集成在边缘的服务器级产品中。AI芯片要有视频处理和解码能力。主要考虑的是可处理的视频路数以及单路视频结构化的成本[10]。代表芯片有华为Hi3559-AV100等。
2.4自动驾驶
AI芯片作为无人车的大脑,需要对汽车上大量传感器产生的数据做实时处理[11],对芯片的算力、功耗、可靠性都有非常高的要求,同时芯片需要满足车规标准,因此设计的难度较大[12]。面向自动驾驶的芯片目前主要有Nvidia Orin、Xavier和Tesla的FSD等。
2.5智能家居
在AI+IoT时代,智能家居中的每个设备都需要具备一定的感知、推断以及决策功能。为了得到更好的智能语音交互用户体验,语音AI芯片进入了端侧市场。语音AI芯片相对来说设计难度低,开发周期短。代表芯片有思必驰TH1520和云知声雨燕UniOne等。
3.AI芯片关键技术和基准测试平台
3.1关键技术和挑战
(1)AI芯片当前的核心是利用乘加计算(multiplier and accumulation,MAC)阵列来实现卷积神经网络中主要的卷积运算的加速。MAC阵列的大量运算,会造成功耗的增加。很多AI应用的场景对于功耗都有严格的限制,如何达到优异的性能功耗比是AI芯片研发的一个重要目标。
(2)深度学习算法中参与计算的数据和模型参数很多,数据量庞大,导致内存带宽成为了整个系统的一个瓶颈“,Memory Wall”也是需要优化和突破的主要问题[13]。
(3)除了芯片本身硬件的设计以外,软件对于AI芯片性能的发挥也有着十分重要的作用,编译器和工具链软件的优化能力、易用性现在也得到越来越多的重视。
3.2基准测试平台
基准测试平台(Benchmark)为AI芯片建立了标准的评估体系,主要职责和意义有:
(1)基于调研和集群信息收集,真实反映AI芯片的使用情况。(2)引入评估和选型标准。(3)对AI芯片的架构定义和优化指引方向。基准测试平台的评估指标包括延时(ms)、吞吐量(ims/s)、能效比(ims/s/W)、利用率(ims/s/T)等。主要的基准测试台有MLPerf、DawnBench(Stanford)、DeepBench(百度)、AIMatrix(阿里巴巴)。
4.AI芯片未来趋势和探索
4.1神经形态芯片
神经形态芯片是指颠覆经典的冯·诺依曼计算架构,采用电子技术模拟已经被证明了的生物脑的运作规则,从而构建类似于生物脑的芯片[14]。
神经形态芯片的优点:
(1)计算和存储融合,突破Memory Wall瓶颈。(2)去中心化的众核架构,强大的细粒度互联能力。(3)更好的在线学习能力。清华大学、Intel、IBM等学校和企业都在做此方面的研究工作。
4.2可重构计算芯片
可重构计算芯片也叫做软件定义芯片[6],主要针对目前AI芯片存在的以下问题和任务需求:
(1)高效性和灵活性难以平衡。(2)复杂的AI任务需要不同类型AI算法任务的组合。(3)不同任务需要的计算精度不同。可重构计算芯片的设计思想在于软硬件可编程,允许硬件架构和功能随软件变化而变化,从而可以兼顾灵活性和实现超高的能效比。
5.云端和边缘侧AI芯片和应用
5.1云端和边缘侧AI芯片
本研究团队从2017年开始研发AI芯片,并在当年发售了第一代云端专用AI芯片BM1680。在2019年发布了第三代AI芯片BM1684。BM1684采用TSMC-12nm工艺,有17.6Tops的int8和2.2Tflops的float32算力,典型功耗为16W,可以支持32路1080P的高清视频解码。基于BM1684芯片,研发了深度学习加速板卡SC5(如图1所示)、高密度计算服务器SA5、边缘计算盒子SE5、边缘计算模组SM5等面向各种不同人工智能应用的产品。
图1.深度学习加速板卡SC5
5.2研发产品的应用
本团队的AI产品已经在云端和边缘侧的多种应用场景下落地使用,包括智慧园区(如图2所示)、城市大脑(如图3所示)、视频结构化、人脸布控、智能支付等。
图2.智慧园区解决方案
图3.城市大脑应用
6.结论
AI芯片行业尚处于起步阶段,已经有越来越多的项目开始落地和商业化,它的快速发展有助于推动整个人工智能产业的进展。本文对AI芯片的现状和未来可能的技术方向做了调研和分析,希望可以帮助读者更好地了解AI芯片行业,AI芯片拥有巨大的产业价值和战略地位,相信中国的科研机构和企业会努力抓住机遇,让中国的人工智能产业蓬勃发展。
精彩评论