智能处理器是一种为深度学习、统计学习等人工智能技术提供算力支持的计算机硬件[1][2]。其中,面向深度神经网络的处理器(也称为NPU,Neural network Processing Unit)由于深度学习技术的巨大成功而备受关注[3][4],也是当前市场上最广泛存在的一种智能处理器类型,产品包括寒武纪的MLU[5]、华为昇腾[6]、Google的TPU[7]等。 历史
2012年,深度神经网络技术首先在ImageNet项目上表现出AI超越人类的图片识别成功率,在视觉领域取得了巨大的成功。其后在2014年,AlphaGo打败李世石,在围棋这一人类最高脑力活动的领域中实现AI战胜人类的里程碑事件,标志着人工智能技术进入新篇章。与此同时,计算机体系结构研究者发现深度神经网络在通用CPU和GPU上的运行效率低下,原因是大量访存的开销使得计算资源利用率低[2]。为了对人工智能技术提供高效算力支持,研究者们提出智能处理器来优化深度神经网络的推导和训练效率。 功能和结构
虽然智能处理器在面向不同网络结构时优化侧重点各有不同,但它的总体结构都包括处理阵列、定制化计算单元、片上全局/私有缓存和控制逻辑等[1][7][2]。处理阵列的最重要的功能是完成矩阵计算;定制化计算单元完成深度神经网络中的特殊计算功能(如softmax或激活操作等);片上全局存储和私有缓存存储了权值、激活值等数据,配合数据流优化技术支持数据的高效访问和复用,减少访问片外存储 的开销[1];控制部件主要负责发出完成每条硬件原语执行的各个操作的控制信号[3]。