国内刊号:11-2560/TP
国际刊号:1000-9825
发布日期:
作者:杨乐,刘晓义,李广力,渠鹏,崔慧敏,张悠慧
单位:杨乐,清华大学 计算机科学与技术系, 北京 100084;清华大学 北京信息科学与技术国家研究中心, 北京 10008411,刘晓义,清华大学 计算机科学与技术系, 北京 100084;清华大学 北京信息科学与技术国家研究中心, 北京 10008402,李广力,中国科学院 计算技术研究所, 北京 10019003,渠鹏,清华大学 计算机科学与技术系, 北京 100084;清华大学 北京信息科学与技术国家研究中心, 北京 10008404,崔慧敏,中国科学院 计算技术研究所, 北京 10019005,张悠慧,清华大学 计算机科学与技术系, 北京 100084;清华大学 北京信息科学与技术国家研究中心, 北京 100084;中关村实验室, 北京 10009406
关键词:类脑计算;编译框架;类脑计算芯片
基金:国家自然科学基金面上项目(62072266); 国家自然科学基金原创探索计划 (62250006); 国家自然科学基金青年科学基金 (62202254); 北京信息科学与技术国家研究中心青年创新基金(BNR2022RC01003)
各类新型架构的类脑计算芯片正不断涌现, 类脑神经网络训练/学习算法和高效的生物神经网络仿真也是研究热点. 但如何在架构迥异的类脑计算芯片上优化运行计算/访存特征不同的类脑应用是关键难点, 也是建立类脑计算良好生态环境的重点, 而通用计算领域的繁荣生态已经表明, 一个灵活、可扩展、可复用的编译框架是解决这一问题的有效途径. 为此提出BIVM, 一个类脑计算编译框架及其验证原型. BIVM基于领域定制化体系结构(domain specific architecture, DSA)的多层中间表示(multi-level intermediate representation, MLIR)框架, 设计了为类脑神经网络定制的多层 IR, 包括脉冲神经网络方言(高层 IR)、由 MLIR 内置方言为主组成的中间层 IR 和各类芯片的底层 IR. 针对不同类脑芯片的体系结构跨度很大且其提供的硬件功能粒度不一等问题, BIVM充分利用MLIR的progressivity特性, 所设计的IR能够混合不同的抽象层次和概念(比如混合细粒度指令与某些后端的以交叉开关结构为运算主体的粗粒度运算), 从而能够复用软件模块、简化开发; 在此基础上, 在多层IR的递降转换中灵活组合不同级别的编译优化方法, 包括被广泛采纳的SNN特定优化技术(如计算稀疏性挖掘与时空并行度挖掘)和适配目标硬件的底层优化技术, 以实现不同后端上的高性能. 目前, BIVM原型支持的后端有通用处理器(控制流架构)、具有控制流/数据流混合架构的脉冲神经网络加速芯片(FPGA), 以及基于ReRAM (resistive random-access memory, 阻变存储器)的数据流架构类脑芯片(软件仿真), 能够将智能应用与生物神经网络仿真应用优化编译为适配不同架构芯片的执行程序. 随后, 进行编译技术适配性分析与性能比较, 结果表明该类框架在编译高生产力、高可移植性、高性能方面具有良好潜力.
来源:2025年第10期
《软件学报》期刊编辑部