当前位置: 首页 > 专利查询>浙江大学专利>正文

一种类脑计算机操作系统的神经任务片内路由方法及装置制造方法及图纸

技术编号:33072624 阅读:33 留言:0更新日期:2022-04-15 10:07
本发明专利技术公开了一种类脑计算机操作系统的神经任务片内路由方法及装置,通过目标核心形成的区域、离边缘路由区域最远的一行核心,以及判断目标核心是否需要配置中继路由,找到最短的边缘路由核心,以从远及近的原则配置目标核心,采用最短路径方法以及单次路由步长最大方法找到中继路由核心和边缘路由核心;本发明专利技术通过选择步长较短的中继路由和边缘路由,解决了离输入边缘较远的核心路由不可达问题,解决了片内路由步长过长引起神经任务运行时间长问题。问题。问题。

【技术实现步骤摘要】
一种类脑计算机操作系统的神经任务片内路由方法及装置


[0001]本专利技术涉及类脑计算机操作系统
,尤其是涉及一种类脑计算机操作系统的神经任务片内路由方法及装置。

技术介绍

[0002]传统的冯诺依曼体系结构的计算机难以满足目前高速发展的人工智能计算性能需求,尤其是面对低功耗高性能计算领域,如边缘计算。因此,脉冲神经网络为寻求更低功耗和更高效计算性能提供了一条可行的路径,但在冯诺依曼体系结构计算机上仿真脉冲神经网络较困难,为了解决这一难题,出现了类脑计算芯片,类脑计算芯片通过对生物大脑结构的模仿来运行脉冲神经网络;相对于现有的计算体系结构,类脑计算是借鉴了生物大脑中信息处理的基本规律,在硬件实现与软件算法等多层面做出了本质变革,从而实现在功耗和计算能力等诸多方面的大幅改进。类脑计算机是由多个类脑计算芯片采用水平扩展的方式构建而成,具有运行超大规模脉冲神经任务能力的新型计算机模型。类脑操作系统为用户提供透明的计算资源管理及神经任务输入类脑计算芯片的能力。神经任务是指神经模型在类脑计算芯片上的运行实体。
[0003]类脑计算芯片是由m*n的二维网格结构组成,每个网格代表一个核心,每个核心既可存储神经任务的模型数据,同时也提供了路由的功能。片内路由是指为了将数据包从芯片边缘路由到目标核心而选择的通信路径;片内路由包括边缘路由核心和中继路由核心;由于类脑计算芯片的特性,类脑操作系统只能与类脑计算芯片的边缘核心交互,由边缘核心将数据包路由到目标核心,且单次路由的步长有限;如果目标核心距离边缘核心步长超过限制,则需要找到中继路由核心,即边缘路由核心先将数据包路由到中继路由核心,然后再由中继路由核心将数据包路由到目标核心;类脑计算机支持多个神经任务并行,不同的神经任务分配了不同的核心,已经配置了神经任务的核心不能再配置给其他神经任务;对于超大规模神经任务会占用更多核心,如果神经任务的周围核心提前被配置,那么较远的核心面临着路由不可达的情况,就要面临着做任务拆分,从而增加了神经任务整体路由步长,进而影响任务的整体运行时间;因此类脑操作系统为了应对片内路由步长问题需要进行合理的路由选择。现有技术主要是面向冯诺依曼体系结构的计算机,对于类脑计算机上片内路由选择的研究依旧是空白。

技术实现思路

[0004]为解决现有技术的不足,实现片内路由步长较短,降低神经任务运行时间的目的,本专利技术采用如下的技术方案:一种类脑计算机操作系统的神经任务片内路由方法,将类脑计算芯片中的核心构建成二维网格,每个网格代表一个核心,每个核心用于存储神经任务的模型数据和提供中继路由,包括如下步骤:步骤S1:确定目标核心形成的区域R2(x2_min,y2_min,x2_max,y2_max),确定离边
缘路由区域最远的一行核心R3(x2_min,y2_max,x2_max,y2_max);步骤S2:判断目标核心R2是否需要配置中继路由;步骤S3:采用步长最短方法,在边缘路由区域R1内,为目标核心形成的区域R2内的所有目标核心,找到最短的边缘路由核心,搜索完成后跳转至步骤S5;步骤S4:为了利用未被配置的核心作为中继路由,以由远及近的原则配置目标核心,从需要搜索中继路由的目标核心形成的区域R4(x4_min,y4_min,x4_max,y4_max)中,确定起始搜索核心坐标search_core(x_search,y_search)=search_core(x4_min,y4_max);为了配置最少的中继路由且使第一级中继路由转发的目标核心数量达到最大,每次尽量搜索类脑芯片中中继路由核心支持配置的最大目标核心数量MAX_RELAY_CORES个;对于需要多级中继的核心,通过最短路径方法以及单次路由步长最大方法,找到多级中继核心和边缘路由;直到将需要搜索中继路由的目标核心形成的区域R4内的所有目标核心配置完成;步骤S5:根据类脑芯片数据包封包规则,进行封装打包并配置到芯片中。
[0005]进一步地,所述的一种类脑计算机操作系统的神经任务片内路由方法,包括如下情形:(1)目标核心形成的区域R2都不需要中继路由:离边缘路由区域最远的一行核心R3到边缘路由区域R1的步长,小于等于类脑芯片中中继路由核心可以路由的最大步长MAX_STEP,则通过边缘路由均路由可达,确定目标核心形成的区域R2为不需要搜索中继路由的核心区域R5(x5_min,y5_min,x5_max,y5_max)=R2,进入步骤S3找到所有目标核心的边缘路由;(2)目标核心形成的区域R2均需中继路由:确定需要搜索中继路由的目标核心形成的区域R4(x4_min,y4_min,x4_max,y4_max);跳转至步骤S4找到相应的中继路由核心;(3)部分目标核心需要配置中继路由,部分目标核心不需要配置中继路由:确定需要搜索中继路由的目标核心形成的区域R4(x4_min,y4_min,x4_max,y4_max),确定不需要搜索中继路由的核心区域R5(x5_min,y5_min,x5_max,y5_max);首先跳转至步骤S4为需要搜索中继路由的目标核心形成的区域R4找到相应的中继路由和边缘路由,将确定需要搜索中继路由的目标核心形成的区域R4全部配置完成;然后跳转至步骤S3配置不需要搜索中继路由的核心区域R5。
[0006]此方法是为了从离输入边缘最远的目标核心开始配置,如果较远的核心需要中继路由,则可以利用较近的核心作为中继路由,配置结束后清除中继路由,则继续配置较近的核心,可以带来的收益:在不拆分模型连接的情况下配置离输入边缘较远的核心。
[0007]进一步地,所述步骤S3中,最短的边缘路由核心是与目标核心的曼哈顿距离最短的作为边缘路由核心。
[0008]进一步地,所述步骤S4包括如下步骤:步骤S4.1:从起始搜索核心坐标search_core开始遍历,横向遍历的步长最大为类脑芯片中中继路由核心可以路由的最大步长MAX_STEP,且不超过需要搜索中继路由的目标核心形成的区域R4,纵向遍历的步长最大为类脑芯片中中继路由核心可以路由的最大步长MAX_STEP,且不超过需要搜索中继路由的目标核心形成的区域,即计算任务的核心边缘R4,记录找到的目标核心数量,当目标核心数量达到类脑芯片中中继路由核心支持配置的最大目标核心数量64时,结束搜索;将找到的目标核心记录到一维数组列表config_cores中,并
更新核心占用情况的二维数组,即表1“类脑资源使用表A”的占用情况config字段为1;将遍历到的空闲核心记录到空闲核心列表“free_cores”中作为配置一级中继路由核心范围;记录横向遍历的列x坐标和纵向遍历的行y坐标;每遍历一行,起始搜索核心坐标的行坐标y_search减1;记录横向遍历的最大步长X_STEPS;当纵向遍历到需要搜索中继路由的目标核心形成的区域R4外时,即y_search小于y4_min,则结束此次遍历;更新起始搜索核心坐标的行、列坐标:y_search=y4_max,x_search=x_search+X_STEPS;当遍历到的目标核心数量等于类脑芯片中中继路本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种类脑计算机操作系统的神经任务片内路由方法,将类脑计算芯片中的核心构建成二维网格,每个网格代表一个核心,每个核心用于存储神经任务的模型数据和提供中继路由,其特征在于包括如下步骤:步骤S1:确定目标核心形成的区域,确定离边缘路由区域最远的一行核心;步骤S2:判断目标核心是否需要配置中继路由;步骤S3:采用步长最短方法,在边缘路由区域内,为目标核心形成的区域内的所有目标核心,找到最短的边缘路由核心,搜索完成后跳转至步骤S5;步骤S4:以由远及近的原则配置目标核心,从需要搜索中继路由的目标核心形成的区域中,确定起始搜索核心坐标;每次搜索类脑芯片中中继路由核心支持配置的最大目标核心数量;对于需要多级中继的核心,通过最短路径方法以及单次路由步长最大方法,找到多级中继核心和边缘路由;直到将需要搜索中继路由的目标核心形成的区域内的所有目标核心配置完成;步骤S5:根据类脑芯片数据包封包规则,进行封装打包并配置到芯片中。2.根据权利要求1所述的一种类脑计算机操作系统的神经任务片内路由方法,其特征在于包括如下情形:(1)目标核心形成的区域都不需要中继路由:离边缘路由区域最远的一行核心到边缘路由区域的步长,小于等于类脑芯片中中继路由核心可以路由的最大步长,则通过边缘路由均路由可达,确定目标核心形成的区域为不需要搜索中继路由的核心区域,进入步骤S3找到所有目标核心的边缘路由;(2)目标核心形成的区域均需中继路由:确定需要搜索中继路由的目标核心形成的区域;跳转至步骤S4找到相应的中继路由核心;(3)部分目标核心需要配置中继路由,部分目标核心不需要配置中继路由:确定需要搜索中继路由的目标核心形成的区域,确定不需要搜索中继路由的核心区域;首先跳转至步骤S4为需要搜索中继路由的目标核心形成的区域找到相应的中继路由和边缘路由,将确定需要搜索中继路由的目标核心形成的区域全部配置完成;然后跳转至步骤S3配置不需要搜索中继路由的核心区域。3.根据权利要求1所述的一种类脑计算机操作系统的神经任务片内路由方法,其特征在于所述步骤S3中,最短的边缘路由核心是与目标核心的曼哈顿距离最短的作为边缘路由核心。4.根据权利要求1所述的一种类脑计算机操作系统的神经任务片内路由方法,其特征在于所述步骤S4包括如下步骤:步骤S4.1:从起始搜索核心坐标开始遍历,横向遍历的步长最大为类脑芯片中中继路由核心可以路由的最大步长,且不超过需要搜索中继路由的目标核心形成的区域,纵向遍历的步长最大为类脑芯片中中继路由核心可以路由的最大步长,且不超过需要搜索中继路由的目标核心形成的区域,记录找到的目标核心数量,当目标核心数量达到类脑芯片中中继路由核心支持配置的最大目标核心数量时,结束搜索;将找到的目标核心记录到一维数组列表中,并更新核心占用情况的二维数组;将遍历到的空闲核心记录到空闲核心列表中作为配置一级中继路由核心范围;记录横向遍历的列坐标和纵向遍历的行坐标;每遍历一行,起始搜索核心坐标的行坐标减1;记录横向遍历的最大步长;
当纵向遍历到需要搜索中继路由的目标核心形成的区域外时,则结束此次遍历;更新起始搜索核心坐标的行、列坐标;当遍历到的目标核心数量等于类脑芯片中中继路由核心支持配置的最大目标核心数量时,若此行没有遍历结束,则起始搜索核心坐标的行坐标不更新,将此行剩余未遍历到的核心加入空闲核心列表中作为中继路由核心选择;当空闲核心列表为空时,将更新后的起始搜索核心坐标的行坐标一行的核心加入空闲核心列表中作为中继路由核心选择;步骤S4.2:基于中继路由核心到所有目标核心曼哈顿距离之和最小原则,找到相应的核心作为第一级中继路由核心,将找到的中继路由核心更新到中继路由字典中,中继路由核心的下一跳核心是此次搜索的所有目标核心;步骤S4.3:计算中继路由核心到边缘路由区域的最短步长,当步长小于等于类脑芯片中中继路由核心可以路由的最大步长时,确定中继路由核心的边缘路由;当步长大于类脑芯片中中继路由核心可以路由的最大步长时,则继续搜索多级中继路由核心和边缘路由;步骤S4.4:确定搜索多级中继的区域,以中继路由核心为第一级...

【专利技术属性】
技术研发人员:王凤娟吕攀康敏邓水光李莹潘纲
申请(专利权)人:浙江大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1