摘要
随着人工智能技术的快速发展,人工智能模型的规模越来越大,对计算能力的需求不断增长。为了满足人工智能模型对计算能力的需求,全球积极推动智能处理器的发展。我国在智能处理器的研究方面走在世界的前列,代表性工作有中国科学院计算技术研究所自主研发的DianNao系列处理器,在提供人工智能算法底层算力上取得了显著成果。其中,基于DaDianNao架构开发的DLP-M处理器设计了高效的指令集、流水线、运算部件和访存部件,在处理人工智能任务时有更高的性能、灵活性和能效比。然而,随着国产智能处理器的快速发展,系统软件的发展相对滞后,亟需设计高性能软件应用对人工智能模型进行适配,从而充分发挥智能处理器的体系结构优势。本文面向DLP-M处理器平台,针对BERT这一广泛应用的自然语言处理模型的高性能部署和优化展开了深入研究。 本文主要的工作有: (1)将BERT模型在DLP-M处理器上进行部署实现,并对模型的理论性能和优化空间进行分析。针对模型访存量大的问题,通过计算图变换和计算图算子融合的优化方法,提升模型的推理速度。针对模型访存量大以及计算量大的问题,通过模型量化手段,对模型进行压缩,实现了四种推理模式,适用于不同的推理场景。 (2)深入研究了 DLP-M处理器的多级存储结构、DMA数据传输机制以及计算特性等底层软硬件特性。通过数据复用、片上驻留、指令重排、流水线机制以及减少模型输入等优化方法,利用BANG智能编程语言进行自定义算子开发,解决设备端空闲率高、量化性能不符合预期以及访存时间长的问题,并且有效提升模型在处理器上的执行效率。 (3)在多种规模下进行了正确性验证和性能提升测试,结果表明:优化后的算子和模型均能取得正确的推理结果。对于多头注意力机制,本文优化方法具有1.63~6.83倍的性能提升;对于前馈神经网络,优化方法具有1.8~7.91倍的性能提升;对于整个BERT模型,可以获得1.75~5.95倍的加速效果。