SWAM:SNN工作负载自动映射器
2021-09-13郁龚健张鲁飞李佩琦刘家航柴志雷陈闻杰
郁龚健,张鲁飞,李佩琦,华 夏,刘家航,柴志雷,+,陈闻杰
1.江南大学 人工智能与计算机学院,江苏 无锡214122
2.数学工程与先进计算国家重点实验室,江苏 无锡214215
3.华东师范大学 软硬件协同设计技术与应用教育部工程研究中心,上海200062
在神经科学和神经形态计算领域中使用最多的网络为脉冲神经网络(spiking neural network,SNN)[1]。与传统深度神经网络(deep neural network,DNN)相比,SNN 工作机理更接近于生物大脑。类脑计算的一个目标是实现对大规模脉冲神经网络的快速乃至实时的仿真。由于工作频率及功耗的限制,这种大规模脉冲神经网络在单个计算节点或芯片上完成,目前尚不现实。所幸SNN本身具有分布式计算的特点,因此构建大规模集群以形成分布式并行计算平台,成为当前类脑的计算平台的主流方式,如Darwin Mouse[2]、SpiNNaker[3]、Loihi[4]、TrueNorth/SyNAPSE[5]、BrainscaleS[6]和NeuroGrid[7]。
针对分布式类脑计算平台,SNN 工作负载与计算平台的不匹配问题会导致专用类脑系统的计算能效甚至还不如通用计算机系统。例如,当在SpiNNaker上运行全尺寸皮质微电路模型[8]时,SpiNNaker 的计算表现还不如基于高性能集群的NEST 软件模拟方式[9]以及单块GPU 方式[10]。原因在于该模型中神经元连接的突触数量超过了SpiNNaker设定的最优值。因此,如何快速确定SNN 工作负载与计算平台的合理映射,实现两者的完美匹配,成为当前研究与优化类脑体系结构所需面临的问题之一,如图1所示。

Fig.1 Problem of mapping SNN workloads图1 SNN工作负载的映射问题
针对SNN 工作负载预测与匹配的问题,Susanne等人的工作[11]通过建模与手动分析的方式,实现了对SNN网络所耗内存的预测。……