Processing math: 100%
  • 中国精品科技期刊
  • CCF推荐A类中文期刊
  • 计算领域高质量科技期刊T1类
高级检索

基于混合模式路由的脑启发片上网络架构

王智超, 陈亮, 李千鹏, 陈奥新, 刘昕, 宋文娜

王智超, 陈亮, 李千鹏, 陈奥新, 刘昕, 宋文娜. 基于混合模式路由的脑启发片上网络架构[J]. 计算机研究与发展. DOI: 10.7544/issn1000-1239.202440683
引用本文: 王智超, 陈亮, 李千鹏, 陈奥新, 刘昕, 宋文娜. 基于混合模式路由的脑启发片上网络架构[J]. 计算机研究与发展. DOI: 10.7544/issn1000-1239.202440683
Wang Zhichao, Chen Liang, Li Qianpeng, Chen Aoxin, Liu Xin, Song Wenna. A Brain-Inspired Network-on-Chip Architecture with Hybrid-Mode Routing[J]. Journal of Computer Research and Development. DOI: 10.7544/issn1000-1239.202440683
Citation: Wang Zhichao, Chen Liang, Li Qianpeng, Chen Aoxin, Liu Xin, Song Wenna. A Brain-Inspired Network-on-Chip Architecture with Hybrid-Mode Routing[J]. Journal of Computer Research and Development. DOI: 10.7544/issn1000-1239.202440683
王智超, 陈亮, 李千鹏, 陈奥新, 刘昕, 宋文娜. 基于混合模式路由的脑启发片上网络架构[J]. 计算机研究与发展. CSTR: 32373.14.issn1000-1239.202440683
引用本文: 王智超, 陈亮, 李千鹏, 陈奥新, 刘昕, 宋文娜. 基于混合模式路由的脑启发片上网络架构[J]. 计算机研究与发展. CSTR: 32373.14.issn1000-1239.202440683
Wang Zhichao, Chen Liang, Li Qianpeng, Chen Aoxin, Liu Xin, Song Wenna. A Brain-Inspired Network-on-Chip Architecture with Hybrid-Mode Routing[J]. Journal of Computer Research and Development. CSTR: 32373.14.issn1000-1239.202440683
Citation: Wang Zhichao, Chen Liang, Li Qianpeng, Chen Aoxin, Liu Xin, Song Wenna. A Brain-Inspired Network-on-Chip Architecture with Hybrid-Mode Routing[J]. Journal of Computer Research and Development. CSTR: 32373.14.issn1000-1239.202440683

基于混合模式路由的脑启发片上网络架构

基金项目: 科技创新2030-“脑科学与类脑研究”重大项目( 2021ZD0200300)
详细信息
    作者简介:

    王智超: 2000年生. 硕士研究生. 主要研究方向为类脑计算和片上网络设计

    陈亮: 1977年生. 硕士,副研究员,硕士生导师. CCF会员. 主要研究方向为计算机体系架构与集成电路设计、类脑计算

    李千鹏: 1999年生. 硕士. 主要研究方向为类脑计算和类脑处理器

    陈奥新: 2000年生. 硕士研究生. 主要研究方向为人工智能和算法部署优化

    刘昕: 1995年生. 硕士,工程师. 主要研究方向为集成电路设计和计算机架构

    宋文娜: 1989年生. 硕士,工程师. 主要研究方向为系统结构和数字电路设计

    通讯作者:

    陈亮(liang.chen@ia.ac.cn

  • 中图分类号: TP389.1

A Brain-Inspired Network-on-Chip Architecture with Hybrid-Mode Routing

Funds: This work was supported in part by the National Key Research and Development Program of China under STI 2030——Major Projects (2021ZD0200300).
More Information
    Author Bio:

    Wang Zhichao: born in 2000. Master candidate. His main research interests include neuromorphic computing and network-on-chip design

    Chen Liang: born in 1977. Master, associate professor, master’s supervisor. Member of CCF. His main research interests include computer architecture, integrated circuit design and brain-inspired computing

    Li Qianpeng: born in 1999. Master. His main research interests include brain-inspired computing and brain-inspired processor. (liqianpeng2021@ia.ac.cn)

    Chen Aoxin: born in 2000. Master candidate. His main research interests include artificial intelligence and algorithm deployment optimization. (chenaoxin2022@ia.ac.cn )

    Liu Xin: born in 1995. Master, engineer. Her main research interests include integrated circuit design and computer architecture. (liuxin@ia.ac.cn)

    Song Wenna: born in 1989. Master, engineer. Her main research interests include System architecture and digital circuit design. (wenna.song@ia.ac.cn)

  • 摘要:

    大规模神经形态平台的兴起和发展要求片上网络具备高效的数据传输机制. 现有工作在开发高性能路由拓扑架构和设计路由策略方面已经做出了许多努力,但它们仍然受限于单一传输模式或扩展性差的问题,这导致神经形态计算的效率低. 受人脑网络小世界特性的启发,提出了一种高效的片上网络路由方案——区域广播(region-broadcast,ReB),能够直接支持单播、多播和广播的混合传输模式. 此外,部署了一种突触连接索引方法,以适应所提出的路由方案并支持这种混合模式的传输. 这种方法替代了传统的多播路由表,有效提高了网络扩展性并降低功耗. 实验结果表明,与现有工作相比,ReB路由方案将峰值脉冲流量和链路负载标准差分别降低了11.5%和20.4%. 在合成流量、脉冲神经网络应用和脑皮质柱网络验证下,ReB策略有效提升了片上网络的延迟、吞吐量和功耗等方面的性能. 最后,所提出的ReB路由器的带宽达到0.24 spike/cycle, 硬件实现面积仅为0.014 mm2.

    Abstract:

    The rise and development of large-scale neuromorphic platforms require network-on-chip to support efficient data transmission mechanisms. Although many efforts have been made to develop high performance topology architectures and routing schemes, they still suffer from single transmission mode or poor scalability, making them stay on a low efficiency in neuromorphic computing. Inspired by the small-world properties of human brain networks, this brief proposes an efficient region-broadcast (ReB) routing scheme to support unicast, multicast, and broadcast transmission modes. Besides, a synaptic connections indexing method is deployed to accommodate the region-broadcast routing scheme and support this hybrid-mode packet transmission. This method replaces the traditional multicast routing table, effectively improving network scalability and reducing power consumption. Experimental results show that compared to existing work, the ReB routing scheme reduces the peak spike traffic and link load standard deviation by 11.5% and 20.4%, respectively. The ReB scheme brings improvements in latency, throughput, and energy under the validation of synthetic traffic, spiking neural network applications and brain cortical networks. Various synthetic traffic patterns are used in the experiments. The datasets used in spiking neural network applications include MNIST, QTDB, Ev-object, and DVS-Gesture. Finally, the proposed ReB router has an excellent bandwidth of 0.24 spike/cycle and only consumes an area of 0.014 mm2.

  • 随着人类日益增长的能源需求和不可再生资源的枯竭,核聚变能源由于其清洁性和安全性作为解决长期能源需求的解决方案,越来越受到人类社会的关注,目前正在建设中的国际热核实验反应堆(international thermonuclear experimental reactor,ITER)是实现核聚变能和平应用的重要里程碑. 磁约束核聚变是产生热核聚变能的最重要方法之一[1-2]. 在反应堆中实现和维持等离子体聚变过程具有巨大的科学和技术挑战,其中针对等离子体稳定性的研究有助于理解、预测、控制和减轻等离子体破坏的威胁,是优化燃烧等离子体运行模式,改善等离子体约束和输运的重要保障,是设计和制造先进的核聚变装置的重要依据.

    数值模拟是等离子体稳定性研究中的关键方法之一,相比理论研究,它能够分析复杂的物理过程,而相比实验研究,它更加经济和灵活. 在等离子体物理数值模拟研究中,回旋动理学理论经常被用来研究在拉莫尔半径空间尺度下的动理学不稳定性和湍流传输[3-5]. 在回旋动理学理论中,通过回旋平均方法将描述分布函数的方程维度从6维降低到5维,使得其特别适用于研究更长时间尺度下的等离子体不稳定性和湍流传输物理过程.

    粒子网格法(particle in cell,PIC)由于其良好的可扩展性、物理守恒性、波粒相互作用描述准确性等优势,在众多回旋动理学模拟算法中具有广泛适用度和应用前景[6-8]. 基于PIC算法的突出特点,科研学者在解决特定时空尺度物理问题的同时,逐步向多时空尺度耦合的非线性复杂物理模拟演进. 其对磁约束核聚变高性能数值模拟中涉及的程序架构、计算性能、算法优化、并行效率都提出了前所未有的挑战. 许多科研学者尝试借助异构平台的计算性能满足回旋动理学PIC代码日益增长的算力需求,在移植优化和数值算法上作出了诸多努力.

    GTC代码是早期受益于异构并行计算的代码之一,基于CUDA在天河一号上展示2~3倍的加速[9]. 基于OPENACC在Titan上展示了2~3倍的加速,在Summit上展示了3~4倍的加速[10]. 基于Intel Xeon Phi加速器,在天河二号上展示了2~5倍的加速[11]. ORB5代码基于OPENACC,在Tesla P100 GPU和Tesla V100 GPU的Summit中分别获得了4倍和5倍的加速[12].

    在上述研究中,通常着重考虑了等离子体中电子对模型的贡献,针对电子的模拟,凭借访存规则等优势可以获得较高的计算性能加速. 而聚变产物Alpha粒子与动理学离子类似,回旋半径较大,必须在回旋运动轨迹上进行回旋平均,从而带来大量非规则的网格数据访存,对访存性能提出了很高的要求. 文献显示在只有动理学离子和绝热电子的情况下,异构移植给整体性能带来了负面的优化[13]. 考虑到聚变产物Alpha粒子的约束和输运是磁约束聚变能否成功的关键. 本文重点聚焦于以Alpha粒子为代表的回旋动理学代码的异构移植和性能优化.

    本文的移植优化及分析测试在天河新一代超级计算机上进行. 天河新一代超级计算机使用异构处理器MT-3000[14],它包含16个CPU,4个加速集群(簇),96个控制核心和1 536个加速核心,理论计算密度高达145FLOPB. 每个加速核心以超长指令字(very long instruction word, VLIW)方式工作,每16个加速器核心和1个控制核心被组织成1个加速阵列,以SIMD指令控制. MT-3000具有混合的存储器层次结构,包括每个集群的GSM(6MB),HBSM(48MB),DDR(32GB)存储器,每个加速阵列的AM(768KB)和SM(64KB)片上存储器为加速核供给数据. 其架构如图1所示.

    图  1  MT-3000架构图
    Figure  1.  The architecture diagram of MT-3000

    在异构处理器MT-3000上移植程序时有2个挑战:一方面,如何高效使用复杂的内存结构高效的将数据传递到加速阵列;另一方面,如何充分发挥高计算密度特性. 这2方面的挑战需要在程序移植优化时打破传统基于CPU的程序设计结构更多地强调计算性能的作用,从而实现整体性能的提高.

    VirtEx是基于PIC算法开发的回旋动理学模拟代码,已成功用于分析线性电阻撕裂不稳定性[15]. 代码按照PIC方法,将带电粒子以拉格朗日法描述,对应在连续相空间的分布函数采样点;而场信息以欧拉法描述,采用结构化网格描述平衡场,采用非结构化网格描述扰动场[16]. VirtEx代码的并行化策略是通过在环形方向上将模拟区域划分为不同的子域实现空间并行化,每个子域由1组进程管理. 该组中的每个进程拥有子区域内的场信息副本,并在该子域内将粒子按照进程编号进行并行划分.

    VirtEx代码的主要结构如图2所示,其主循环使用2阶龙格-库塔算法,在每个循环中,通过函数Push更新粒子在相空间的位置,其可以更加细致的分为粒子对场信息的回旋平均函数PG(push gather)和粒子位置更新函数PI(push interpolation);通过函数Locate计算粒子位置和扰动场网格之间插值的权重系数;通过函数Charge计算在非结构化扰动网格上的分布函数矩. 而其他热点部分主要是对非结构化网格上的扰动场更新和粒子MPI通信等操作. 其中3个函数PushLocateCharge为代码的热点,共占主循环时间的85%以上.

    图  2  VirtEx代码的主要结构及热点分布
    Figure  2.  Main structure of the VirtEx code and hotspot distribution

    3个热点函数中涉及的算法如下所示:

    算法1. 函数PushGather回旋平均算法.

    输入:环向格点权重wzpart, 径向格点权重wppart, 极向格点权重wtpart, 格点编号jtpart, 扰动电场gradphi;

    输出:回旋平均扰动场wpgc.

    for (mp=0; mp<mpmax; mp++)/*粒子循环*/

    for(igyro=0;igyro<ngyro;igyro++) /*回旋平均 循环*/

    读取粒子所在的格点权重及索引;

    以索引读取gradphi

    计算临时变量e

    end for

    累加计算wpgc,供函数PI使用*/

    end for

    算法2. 函数PushInterpolation粒子位置更新算法.

    输入:相空间坐标zpart, 历史相空间坐标zpart0,回旋平均扰动场wpgc

    输出:相空间坐标zpart.

    for (mp=0; mp<mpmax; mp++)/*粒子循环*/

    读取粒子信息 zpart ,wpgc

    插值获取网格信息、电场、磁场等;

    计算场对粒子的作用;

    推动粒子更新速度位置信息;

    end for

    算法3. 函数Locate粒子到场的插值权重系数算法.

    输入:相空间坐标zpart

    输出:环向格点权重wzpart, 径向格点权重wppart, 极向格点权重wtpart, 格点编号jtpart.

    for (mp=0; mp<mpmax; mp++)/*粒子循环*/

    for(igyro=0; igyro<ngyro; igyro++)/*回旋平均 循环*/

    读取粒子信息zpart

    读取网格信息;

    计算粒子插值权重;

    end for

    end for

    算法4. 函数Charge非结构化扰动网格上的分布函数矩算法.

    输入:环向格点权重wzpart, 径向格点权重wppart, 极向格点权重wtpart, 格点编号jtpart

    输出:电流密度density.

    for (mp=0; mp<mpmax; mp++)/*粒子循环*/

    插值获取网格信息、电场、磁场;

    for(igyro=0; igyro<ngyro; igyro++)/*回旋平均 循环*/

    读取粒子插值权重;

    计算粒子对于周围格点的扰动量;

    粒子信息向网格上规约到density

    end for

    end for

    上述3个热点函数中的4个算法外层循环体均围绕粒子展开,且粒子间具有良好的独立性,面向异构处理器MT-3000异构移植工作主要围绕粒子循环的向量指令集改写展开.

    同时,为了更好适配向量指令集的访存特性,在数据结构上做了改写,将粒子数据使用SOA(struct of array)数据结构标识,网格数据使用AOS(array of struct)数据结构. 粒子数据具有数量多,独立性好的特性,配合SOA数据结构更适用于发挥向量指令运算的优势;而网格数据数量远远小于粒子数,访存量巨大,AOS的数据结构能够充分发挥内存局部性. 针对数据结构的改写工作为后续程序的性能优化提供了重要的保障.

    基于上述对于程序热点函数的分析,回旋动理学PIC数值模拟算法涉及粒子与网格数据间的大量访存,尤其在面向扰动场网格数据的访存操作中存在非规则访问和原子写操作,二者对于访存性能提出了艰难的挑战,几个热点函数的访存与计算量统计如表1所示.

    表  1  VirtEx热点函数的初始计算密度统计
    Table  1.  Initial calculated density statistics of VirtEx hot spot function
    函数 浮点计算量/FLO 访存量/B 计算密度/FLOPB
    PG 269mp 232mp 1.15
    PI 462mp 224mp 1.98
    Locate 238mp 200mp 1.17
    Charge 158mp 200mp 0.75
    注:变量mp表示粒子数量,变量前系数为热点函数中每个粒子计算访存量的统计值.
    下载: 导出CSV 
    | 显示表格

    因此,如何将计算密度在1~2 FLOPB的访存密集型模块,通过性能优化策略发挥高计算密度型异构设备的计算性能,是关键性的研究内容,也是本文的研究重点. 在本章中通过中间变量的即时计算,基于SM片上存储的软件缓存设计,热点函数合并3种优化方法展开介绍.

    在传统基于CPU的程序设计中,开发者更倾向于主动寻找公用数据预先计算并暂存于内存中,利用多级高速缓存,通过索引获取数据,通过增加访存量换取计算量的减少. 然而,这种优化方法并不适合于基于宽向量计算的高计算密度型异构设备,大量引入访存会限制计算能力的发挥,同时使用索引的非规则访存模式也不适用于向量计算. 因此,考虑到新架构的特点,本文采用了与传统方法截然相反的优化方法来提高计算性能.

    在VirtEx中,磁场、温度、密度、安全因子等中间变量可以将预计算转换为即时计算,引入热点函数中,按照每个粒子对中间变量的需求完成计算. 该操作可以有效减少热点函数中的规则访存和非规则访存,降低流水线中断次数,避免由于按索引访问所带来的向量重组操作.

    通过热点函数分析,可以进行优化的中间变量重要分为2类. 一类以每个径向网格上的极向网格点数mtheta为例,该函数可以在热点函数中完成即时计算:

    mthetai=2Floor(πriΔl+0.5). (1)

    另一类中间变量却难以直接解析化表达,例如粒子在非结构化扰动场网格中的位置索引信息igrid,其形式为

    igridi=1+i1j=0mthetai, (2)
    mthetai=2πrΔl+δi=ai+b+δi. (3)

    如式(2)所示,变量igrid的计算基于变量mtheta的累加式,而由于函数Floor引入的不连续性,导致变量igrid的数学公式不能通过简单的变换和积分得出.

    由于极向格点数远大于1,且径向格点在r坐标描述下是均匀的,当残差δi1igrid同样可以表示为

    igridi=ai2+bi+c+ri, (4)

    其中残差r远小于二次函数部分. 为了能够构建igrid的解析表达式,采用多项式来拟合二次函数的部分,而残差可以通过周期函数f来降低到0.5以下,如图3所示. 从而igrid的解析表达式可以表示为如下的形式:

    图  3  位置索引变量igrid真实值与数值拟合的对比
    Figure  3.  Comparison of the real value and numerical fitting of the location index variable igrid
    igridi=Round[ai2+bi+c+f(i)]. (5)

    得益于对平衡剖面信息的解析化表达和即时计算,函数PushInterpolation和函数Locate中的随机内存访问过程得到减少. 只有热点函数PushGather中存在针对扰动场回旋平均的随机内存访问,在下面的章节中会论述相应的优化方法.

    在基于CPU的通用架构中,内置的缓存机制允许开发者在编程时无需关注高速缓存,更多的是将其视为自动化的访存系统. 而在MT-3000处理器中,考虑到性能,内存和SM/AM之间,以及SM/AM和向量寄存器之间的数据交换需要由程序员手动控制. 在处理内存的随机访问时,依赖DMA接口操作需要依赖索引和数据,造成了内存带宽的浪费. 为了解决这个问题,本文针对加速阵列内部片上存储SM设计软缓存机制,充分发挥内存结构和内存局部性的优势.

    在VirtEx热点函数中有2个非规则访问,其中一个是在函数Push中涉及到对扰动场网格数据的非规则访问,另一个是在函数Charge中涉及到对扰动场网格数据更新的原子写操作.

    函数Charge通过累加操作(+=)将粒子信息到网格上,由于粒子分散在子域内的多个进程,且网格数远小于粒子数,这将涉及到原子操作. 读/写锁是MT-3000处理器中解决数据竞争的重要方法,因此基于读/写锁设计了1种多级同步的软件缓存机制,首先在SM中进行细粒度(如单字)更新,不涉及任何同步操作;其次,使用读写锁保证缓存块在被换出时不会受到数据竞争. 同时完成缓存块从SM到主存储器的累加操作.

    函数PushGaher主要通过4点回旋平均算法获取粒子在回旋运动轨迹上的扰动场信息. 由于片上缓存空间有限,回旋平均算法的随机访问性质会对主存带来巨大的访存开销. 因此基于片上SM存储设计了1种软件缓存机制,该机制通过粒子索引将网格数据按照缓存块读入,如果向量宽度内所有粒子的索引均在缓存块内命中,组装网格数据向量传到向量寄存器完成向量计算;如果索引未在缓存块命中,按照所需索引完成缓存块数据的更新. 同时考虑到性能和局部性的平衡,设计64个缓存块并使用哈希作为缓存块的标识.

    在软件缓存机制的实施后,非规则访存被有效转化,访存带宽的压力得到了缓解. 为缓存命中问题. 进一步地,考虑到回旋平均算法需获取轨迹上每1点的扰动场信息,由于粒子在速度空间分布的随机性,在更新粒子位置后,极坐标方向的粒子分布会被分散,从而扰乱粒子在非结构化扰动场网格上的分布. 程序现有的基于粒子所在径向网格点的排序算法,由于加速阵列中的片上存储空间有限,该算法不足以支撑高计算密度的异构设备,导致缓存命中率的降低.

    图4显示了排序算法优化前后,粒子序号与相应的非结构化网格序号之间的关系,其中psi排序是原始的径向排序算法,igrid排序是改进的排序算法,按照粒子所在的网格点排序,增强了空间局部性. 优化后的排序采用桶式排序算法,每个桶对应于粒子所属的网格点,由于粒子运动的对称性,每个桶的容量总是与每个网格的粒子数同序,因此该算法的复杂性与原来的psi排序同样是O(N).

    图  4  不同排序算法下的粒子格点编号对比
    Figure  4.  Comparison of particle lattice numbers under different sorting algorithms

    不同排序算法下针对扰动场变量gradphi的缓存命中率,如表2所示,在64个缓存块和1 024 B缓存块大小的情况下,扰动场变量gradphi在没有粒子排序的情况下命中率为77.99%,接近于psi排序下的84.47%,而采用igrid排序可以获得99.15%的缓存命中率,得益于超高的缓存命中率,针对变量gradphi的非规则访问可以被近似视作规则访问.

    表  2  不同排序算法下针对扰动场变量gradphi的缓存命中率
    Table  2.  Cache Hit Rate for Disturbance Field Variable gradphi Under Different Sorting Algorithms
    排序算法缓存命中率/%
    不排序77.99
    psi排序84.47
    igrid排序99.15
    下载: 导出CSV 
    | 显示表格

    通过热点函数面向异构加速器MT-3000的移植以及上述几种优化方式的应用. 非规则访存操作已经被近似消除,减轻了访存带宽的压力. 在经过优化后,热点函数PGPILocate的浮点计算量、访存量以及计算密度的统计数据如表3所示,其中mp表示粒子数量,考虑到每个粒子相同的操作,其在统计中作为系数表示. 从数据上可以看出,由于函数PG中的回旋平均操作主要涉及内存访问,其计算密度仅为1.39;而时间占比最高的函数PI,考虑到基于粒子的计算特点,计算密度仅为12.4;而函数Locate在经过变量即时计算优化后,计算密度达到56.3. 综上所述,时间占比高达40%的函数Push的计算密度需要进一步提高计算访存比.

    表  3  热点函数合并优化后计算密度统计
    Table  3.  Hot Spot Function is Merged and Optimized to Calculate the Density Statistics
    函数 浮点计算量/FLO 访存量/B 计算密度/FLOPB
    PG 277mp 198.64mp 1.39
    PI 1 888mp 152mp 12.4
    Locate 12 161mp 216mp 56.3
    PushOpt 14 326mp 134.64mp 106.4
    注:变量mp表示粒子数量,变量前系数为热点函数中每个粒子计算访存量的统计值.
    下载: 导出CSV 
    | 显示表格

    函数PG,PILocate在PIC算法中是计算粒子运动的3个相关函数,函数Locate负责计算插值系数,函数PG负责获取网格数据,函数PI负责推动粒子,三者在算法上具备可合并性. 将函数Locate引入到函数Push中,并将函数PGPI合并,合并后输入仅为粒子信息和网格信息,输出为粒子信息,减少了对于大量中间变量的读写. 优化函数PushOpt的计算密度达到106.4 FLOPB,进一步缩小了与理论值的差距.

    在该这个基准算例测试中,我们用1个MPI进程控制1个MT-3000加速集群(簇),在天河新一代超算系统上使用120个节点上的480个MPI进程和480个簇. 该基准测试使用了1.23 × 106个网格,模拟了2.5 × 109个粒子.

    表4显示了CPU版本和优化版本之间在主循环和热点函数上的性能对比,CPU版本的3个主要的热点函数的占比达到86.06%. 结果显示,基于MT-3000处理器的应用加速效果良好,总体速度提高了4.2倍,其中函数Push和函数Locate分别实现了10.9倍和13.3倍的加速,在具有原子操作的函数Charge实现了16.2倍的性能提升.

    表  4  基准算例的性能表现
    Table  4.  The Performance of Benchmark Examples
    热点函数 CPU版本 优化后版本 加速比
    计算时间/s 占比/% 计算时间/s 占比/%
    主循环 845.63 100 201.46 100 4.2
    Push 323.86 38.30 29.64 14.71 10.9
    Locate 128.69 15.22 9.67 4.80 13.3
    Charge 275.19 32.54 16.98 8.43 16.2
    下载: 导出CSV 
    | 显示表格

    本节展示了优化后的VirtEx程序的弱扩展性测试结果. 在弱扩展性测试中,基准测试为120个节点,使用了3.86 × 105个网格,模拟了3.7 × 109个粒子. 随着节点数增加至3 840个,模拟的粒子数也相应的增加到了1.18 × 1011. 经过多轮测试取平均后的并行效率,如图5所示,在天河新一代超算系统的3 840个节点5 898 240个加速器核心上,其并行效率为88.4%,展示了良好的弱扩展性.

    图  5  120个节点到3 840个节点的弱扩展性测试结果
    Figure  5.  Weak scalability test results from 120 to 3 840 nodes

    基于天河新一代超算系统的异构加速器MT-3000对大规模并行磁约束聚变回旋动理学模拟代码VirtEx进行代码移植和性能优化,围绕高计算密度型系统和访存密集型应用间存在的矛盾. 通过中间变量的即时计算、定制化的软件缓存设计、空间局部性优化、热点函数合并等优化策略,并通过数据分析验证了优化的合理性. 同时在基准测试中,VirtEx的优化显示了良好的加速效果,其中函数Push提速10.9倍,函数Locate提速13.3倍,函数Charge提速16.2倍,从而使整个程序提速4.2倍. 并且在3 840个节点的5 898 240个加速器核心上展示了良好的可扩展性,并行效率为88.4%.

    作者贡献声明:李青峰负责程序设计、移植、测试,并撰写论文;李跃岩负责设计并实现优化算法;栾钟治负责程序瓶颈分析和解决方案提供;张文禄提供了针对程序原理和算法方面的指导;龚春叶提供了针对异构加速设备的优化指导;郑刚提供了系统测试环境及保障工作;康波提供了共性技术的指导;孟祥飞负责设计研究方案并把控研究进度.

  • 图  1   大脑网络的模块化结构[2]

    Figure  1.   Modular structure of brain network[2]

    图  2   ReB路由策略的整体流程图

    Figure  2.   The overall flow chart of ReB routing strategy

    图  3   ReB的死锁避免示意图

    Figure  3.   An illustration of deadlock avoidance of ReB

    图  4   在不同情况下ReB策略允许的路由方向

    Figure  4.   Routing directions allowed by ReB strategy in different situations

    图  5   路由器的微架构

    Figure  5.   The microarchitecture of the router

    图  6   突触连接索引方法的示意图

    Figure  6.   An Illustration of the synaptic connections indexing method

    图  7   不同NoC规模下的访存功耗比值

    Figure  7.   Memory access power consumption ratio under different sizes of NoC

    图  8   链路流量分布以及链路负载标准差

    Figure  8.   Link traffic distribution and load standard deviation

    图  9   不同多播目的地数量和拓扑大小下的饱和吞吐量

    Figure  9.   Saturation throughput for different destination numbers and topology size

    图  10   不同注入率下的平均延迟变化

    Figure  10.   Average latency changes for different injection rates

    图  11   不同SNN应用下的性能对比

    Figure  11.   Performance comparison for various SNN Applications

    图  12   分层皮质网络模型[31]

    Figure  12.   layered cortical network model[31]

    图  13   分层皮质网络模型下的性能评估

    Figure  13.   Performance evaluation under layered cortical networks models

    表  1   仿真实验参数配置

    Table  1   Simulation Parameters Setting

    参数
    mesh大小 10×10
    FIFO深度 8
    微片大小/b 64
    数据包长度 signle-flit
    交换机制 虫洞
    路由器流水线长度 4级
    合成流量模式 random,transpose,hotspot
    多播目的地数量 10,20,30
    注入率/(packet/(cycle·node)) 0.01~0.055
    热身时间/cycle 1 000
    运行时间/cycle 20 000
    下载: 导出CSV

    表  2   SNN应用程序

    Table  2   SNN Applications

    数据集 网络结构 平均数据
    包数量
    平均多播
    比例/%
    MNIST[27] 4C3-MP2-4C3-MP2-128FC-10FC 14 632 37.90
    QTDB[28] 36H-6FC 205 208 100.00
    Ev-object[29] 128FC-256FC-36FC 95 700 100.00
    DVS-Gesture[30] MP2-16C3-16C3-MP2-16C3-
    MP2-{16C3}*3-64FC-16FC-5FC
    1 797 399 60.91
    下载: 导出CSV

    表  3   ReB与相关先进工作对比

    Table  3   Comparison of ReB and related advanced work

    NoC 类型 工艺/nm 拓扑结构 路由算法 有无死锁避免 带宽/(spike/cycle) 面积/mm2
    MC-3DR(2019)[17] 专用NoC设计 45 3D mesh 混合模式,固定路由 × 0.250 0.031
    TLAM(2023)[14] 45 分层结构 混合模式,固定路由 0.086 0.070
    Tianjic(2019)[13] 神经形态平
    台的NoC设计
    28 2D mesh 单播,固定路由 - 0.008
    LAMR(2022)[16] 28 2D mesh 混合模式,自适应路由 × 0.016 -
    MerLin(2023)[32] 55 Fullerene-60 混合模式,自适应路由 × 0.200 0.013
    ReB(本文) 28 2D mesh 混合模式,自适应路由 0.240 0.014
    下载: 导出CSV
  • [1]

    Lent R, Azevedo F A C, Andrade-Moraes C H, et al. How many neurons do you have? Some dogmas of quantitative neuroscience under revision[J]. European Journal of Neuroscience, 2012, 35(1): 1−9

    [2]

    Bullmore E, Sporns O. The economy of brain network organization[J]. Nature Reviews Neuroscience, 2012, 13(5): 336−349

    [3]

    Capra M, Bussolino B, Marchisio A, et al. Hardware and software optimizations for accelerating deep neural networks: Survey of current trends, challenges, and the road ahead[J]. IEEE Access, 2020, 8: 225134−225180

    [4]

    Rathi N, Chakraborty I, Kosta A, et al. Exploring neuromorphic computing based on spiking neural networks: Algorithms to hardware[J]. ACM Computing Surveys, 2023, 55(12): 1−49

    [5]

    Wu Jibin, Xu Chenglin, Han Xiao, et al. Progressive tandem learning for pattern recognition with deep spiking neural networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2021, 44(11): 7824−7840

    [6]

    Kumarasinghe K, Kasabov N, Taylor D. Brain-inspired spiking neural networks for decoding and understanding muscle activity and kinematics from electroencephalography signals during hand movements[J]. Scientific Reports, 2021, 11(1): 2486−2486

    [7]

    Ananthanarayanan R, Esser S K, Simon H D, et al. The cat is out of the bag: Cortical simulations with 109 neurons, 1013 synapses[C/OL]//Proc of the Conf on High Performance Computing Networking, Storage and Analysis. New York: ACM, 2009[2025-01-21]. https://dl.acm.org/doi/abs/10.1145/1654059.1654124

    [8]

    Furber S B, Galluppi F, Temple S, et al. The spinnaker project[J]. Proceedings of the IEEE, 2014, 102(5): 652−665

    [9]

    Vainbrand D, Ginosar R. Scalable network-on-chip architecture for configurable neural networks[J]. Microprocessors and Microsystems, 2011, 35(2): 152−166

    [10]

    Kauth K, Stadtmann T, Brandhofer R, et al. Communication architecture enabling 100x accelerated simulation of biological neural networks[C/OL]//Proc of the Workshop on System-Level Interconnect: Problems and Pathfinding Workshop. New York: ACM, 2020[2025-01-21]. https://dl.acm.org/doi/abs/10.1145/3414622.3431909

    [11]

    Akopyan F, Sawada J, Cassidy A, et al. Truenorth: Design and tool flow of a 65 mw 1 million neuron programmable neurosynaptic chip[J]. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 2015, 34(10): 1537−1557

    [12]

    Davies M, Srinivasa N, Lin T H, et al. Loihi: A neuromorphic manycore processor with on-chip learning[J]. IEEE Micro, 2018, 38(1): 82−99

    [13]

    Pei Jing, Deng Lei, Song Sen, et al. Towards artificial general intelligence with hybrid Tianjic chip architecture[J]. Nature, 2019, 572(7767): 106−111 doi: 10.1038/s41586-019-1424-8

    [14]

    Yazdanpanah F. A two-level network-on-chip architecture with multicast support[J]. Journal of Parallel and Distributed Computing, 2023, 172: 114−130 doi: 10.1016/j.jpdc.2022.10.011

    [15]

    Pu J, Goh W L, Nambiar V P, et al. A low power and low area router with congestion-aware routing algorithm for spiking neural network hardware implementations[J]. IEEE Transactions on Circuits and Systems II: Express Briefs, 2020, 68(1): 471−475

    [16]

    Ding Chen, Huan Yuxiang, Jia Hao, et al. A hybrid-mode on-chip router for the large-scale FPGA-based neuromorphic platform[J]. IEEE Transactions on Circuits and Systems I: Regular Papers, 2022, 69(5): 1990−2001 doi: 10.1109/TCSI.2022.3145016

    [17]

    Vu T H, Abdallah A B. Low-latency K-means based multicast routing algorithm and architecture for three dimensional spiking neuromorphic chips[C/OL]//Proc of the 2019 IEEE Int Conf on Big Data and Smart Computing (BigComp). Piscataway, NJ: IEEE, 2019[2025-01-21]. https://ieeexplore.ieee.org/abstract/document/8679363/

    [18]

    Navaridas J, Luján M, Plana L A, et al. SpiNNaker: Enhanced multicast routing[J]. Parallel Computing, 2015, 45: 49−66 doi: 10.1016/j.parco.2015.01.002

    [19]

    Latora V, Marchiori M. Efficient behavior of small-world networks[J]. Physical Review Letters, 2001, 87(19): 198701 doi: 10.1103/PhysRevLett.87.198701

    [20]

    Seguin C, Sporns O, Zalesky A. Brain network communication: Concepts, models and applications[J]. Nature Reviews Neuroscience, 2023, 24(9): 557−574 doi: 10.1038/s41583-023-00718-5

    [21]

    Benjamin B V, Gao P, McQuinn E, et al. Neurogrid: A mixed-analog-digital multichip system for large-scale neural simulations[J]. Proceedings of the IEEE, 2014, 102(5): 699−716 doi: 10.1109/JPROC.2014.2313565

    [22]

    Furber S B, Lester D R, Plana L A, et al. Overview of the SpiNNaker system architecture[J]. IEEE Transactions on Computers, 2012, 62(12): 2454−2467

    [23]

    Akbari N, Modarressi M. A high-performance network-on-chip topology for neuromorphic architectures[C]//Proc of the 2017 IEEE Int Conf on Computational Science and Engineering (CSE) and IEEE Int Conf on Embedded and Ubiquitous Computing (EUC). Piscataway, NJ: IEEE, 2017: 9−16

    [24] 杨智杰,王蕾,石伟,等. 类脑处理器异步片上网络架构[J]. 计算机研究与发展,2023,60(1):17−29 doi: 10.7544/issn1000-1239.202111032

    Yang Zhijie, Wang Lei, Shi Wei, et al. Asynchronous network-on-chip architecture for neuromorphic processor[J]. Journal of Computer Research and Development, 2023, 60(1): 17−29(in Chinese) doi: 10.7544/issn1000-1239.202111032

    [25]

    Glass C J, Ni L M. The turn model for adaptive routing[J]. ACM SIGARCH Computer Architecture News, 1992, 20(2): 278−287 doi: 10.1145/146628.140384

    [26]

    Norollah A, Derafshi D, Beitollahi H, et al. PAT-NOXIM: A precise power & thermal cycle-accurate NoC SImulator[C]//Proc of the 31st IEEE Int System-on-Chip Conf (SOCC). Piscataway, NJ: IEEE, 2018: 163−168

    [27]

    LeCun Y, Bottou L, Bengio Y, et al. Gradient-based learning applied to document recognition[J]. Proceedings of the IEEE, 1998, 86(11): 2278−2324 doi: 10.1109/5.726791

    [28]

    Laguna P, Mark R G, Goldberg A, et al. A database for evaluation of algorithms for measurement of QT and other waveform intervals in the ECG[C]//Proc of the Computers in cardiology 1997. Piscataway, NJ: IEEE, 1997: 673−676

    [29]

    Gu Fuqiang, Sng W, Taunyazov T, et al. Tactilesgnet: A spiking graph neural network for event-based tactile object recognition[C]//Proc of the 2020 IEEE/RSJ Int Conf on Intelligent Robots and Systems (IROS). Piscataway, NJ: IEEE, 2020: 9876−9882

    [30]

    Zhang Yuan, Cao Jian, Chen Jue, et al. Razor SNN: Efficient spiking neural network with temporal embeddings[C]//Proc of the Int Conf on Artificial Neural Networks. Berlin: Springer, 2023: 411−422

    [31]

    Potjans TC, Diesmann M. The cell-type specific cortical microcircuit: Relating structure and activity in a full-scale spiking network model[J]. Cereb Cortex, 2014, 24(3): 785−806 doi: 10.1093/cercor/bhs358

    [32]

    Zhou Pujun, Yu Qi, Chen Min, et al. Fullerene-inspired efficient neuromorphic network-on-chip scheme[J]. IEEE Transactions on Circuits and Systems II: Express Briefs, 2023, 71(3): 1376−1380

图(13)  /  表(3)
计量
  • 文章访问数:  7
  • HTML全文浏览量:  3
  • PDF下载量:  3
  • 被引次数: 0
出版历程
  • 收稿日期:  2024-08-12
  • 修回日期:  2025-03-18
  • 录用日期:  2025-04-02
  • 网络出版日期:  2025-04-02

目录

/

返回文章
返回