加速单元、相关装置和路径选择方法制造方法及图纸

技术编号:34363632 阅读:51 留言:0更新日期:2022-07-31 08:00
本公开提供了一种加速单元、相关装置和路径选择方法。该加速单元包括:加速处理单元,用于确定待发送到目标加速单元的数据;交换模块,用于:获取所述数据所属的有序组,其中,同一有序组中的数据需要按照发送的顺序接收;基于所述有序组,为数据分配流标识,其中,为同一有序组中的数据分配同一个流标识;并且按照所分配的流标识确定该数据到下一跳加速单元的路径。本公开实施例能在保证有顺序限制的数据不会被乱序执行的同时,减小面积的浪费,降低功耗,减少时延。减少时延。减少时延。

【技术实现步骤摘要】
加速单元、相关装置和路径选择方法


[0001]本公开涉及芯片领域,更具体而言,涉及一种加速单元、相关装置和路径选择方法。

技术介绍

[0002]目前,人工智能中的大量运算普遍采用芯片来处理。传统的处理单元(如CPU等)的架构设计,使得在架构中控制单元、存储单元占用了很大一部分空间,而计算单元占用的空间反而不足,因此其在逻辑控制方面十分有效,而在人工智能计算等需要大规模并行计算的领域则效率不够。因此,开发出了专用于人工智能计算的加速单元(如GPU、NPU等等,以提高人工智能计算的效率。加速单元的一个重要的特点是,当需要处理的计算超过本身的处理能力或效率时,可以将一部分数据交换到其它加速单元进行协同计算,以在人工智能计算中实现大规模并行处理,和提高计算的可延展性。
[0003]当加速单元需要将一部分数据交换到其它加速单元以协助处理时,其要确定到该其它加速单元的路由。路由是从当前加速单元经过其它中间加速单元到该其它加速单元的一条通路。在当前加速单元和该路由中当前加速单元的下一跳加速单元之间可能有多条路径,例如当前加速单元的A端口和下一跳加速单元的A端口之间存在着一条路径,当前加速单元的B端口和下一跳加速单元的B端口之间存在着另一条路径。因此,当前加速单元发到下一跳加速单元的数据要在多条路径中进行选择。这些数据中有一些有顺序限制,另一些没有顺序限制。有顺序限制的数据例如是同一个电影中的前后两帧数据,或者游戏中的前后的数据,它们必须按照发送的数据接收。没有顺序限制的数据没有这种要求。如何保证在当前加速单元向下一跳加速单元发送数据时有顺序限制的数据能在接收后恢复原来的顺序,成为一个问题。
[0004]现有技术中解决这个问题的方法是,给每个要发送的数据加一个序号,下一跳加速单元设置一个很大的重排序静态随机存取存储器(SRAM)将接收到的每个有序组(如一个电影、一个游戏)中的数据按照序号重新排序,以与发送端发送的顺序保持一致。该方法需要一个很大的重排序SRAM,造成了面积的浪费和功耗的增加。重排序SRAM增加传输的延迟。

技术实现思路

[0005]有鉴于此,本公开旨在提出一种加速节点之间传输数据时的路径选择方案,它能在保证有顺序限制的数据不会被乱序执行的同时,减小面积的浪费,降低功耗,并减小时延。
[0006]根据本公开的一方面,提供了一种加速单元,包括:
[0007]加速处理单元,用于确定待发送到目标加速单元的数据;
[0008]交换模块,用于:获取所述数据所属的有序组,其中,同一有序组中的数据需要按照发送的顺序接收;基于所述有序组,为数据分配流标识,其中,为同一有序组中的数据分配同一个流标识;并且按照所分配的流标识确定该数据到下一跳加速单元的路径。
[0009]可选地,所述交换模块为不同有序组中的数据分配不同流标识。
[0010]可选地,所述交换模块包括:
[0011]流标识分配单元,用于为数据分配流标识;
[0012]路径确定单元,用于确定所述加速单元到所述目标加速单元的路由,在所述路由中确定所述加速单元的下一跳加速单元,确定所述加速单元到所述下一跳加速单元的多条路径,并在所述多条路径中,按照分配的流标识确定该数据到下一跳加速单元的路径。
[0013]可选地,所述按照分配的流标识确定该数据到下一跳加速单元的路径,包括:按照所述加速单元到所述下一跳加速单元的数据的流标识在所述多条路径之间均衡分配的原则,确定该流标识的数据到下一跳加速单元的路径。
[0014]可选地,所述加速单元到下一跳加速单元的数据的流标识按自然数由小到大命名;所述按照所述加速单元到所述下一跳加速单元的数据的流标识在所述多条路径之间均衡分配的原则,确定该流标识的数据到下一跳加速单元的路径,包括:用所述数据的流标识除以所述多条路径的总数的余数,作为索引,选择该数据到下一跳加速单元的路径。
[0015]可选地,所述交换模块还包括:读取单元,用于从所述加速处理单元读取待发送到目标加速单元的数据,并按照最大允许长度要求切分,其中,所述流标识分配单元为切分后的数据分配流标识。
[0016]可选地,流标识分配单元将分配的流标识添加到切分后的数据。
[0017]可选地,所述加速处理单元基于待发送到目标加速单元的数据,产生包含数据在所述加速单元的存储地址、和数据所属的有序组的数据转移指令;所述读取单元基于所述数据转移指令中的所述存储地址,读取所述数据;所述加速处理单元基于所述数据转移指令中的所述有序组,分配流标识。
[0018]可选地,所述交换模块还包括:交换结构,具有多个端口和开关网络,所述开关网络用于选择性地将所述多个端口中的一个端口与其它加速单元的一个端口相接,形成到所述其它加速单元的一条路径。
[0019]根据本公开的一方面,提供了一种计算装置,包括:
[0020]如上所述的加速单元;
[0021]目标加速单元;
[0022]处理单元,用于分配待处理加速指令到所述加速单元,以便所述加速单元在执行所述待处理加速指令的过程中,确定待发送到所述目标加速单元用于协同处理的数据。
[0023]根据本公开的一方面,提供了一种片上系统,包括如上所述的加速单元。
[0024]根据本公开的一方面,提供了一种数据中心,包括如上所述的计算装置。
[0025]根据本公开的一方面,提供了一种路径选择方法,包括:
[0026]确定待发送到目标加速单元的数据;
[0027]获取所述数据所属的有序组,其中,同一有序组中的数据需要按照发送的顺序接收;
[0028]基于所述有序组,为数据分配流标识,其中,为同一有序组中的数据分配同一个流标识;以及
[0029]按照分配的流标识确定该数据到下一跳加速单元的路径。
[0030]可选地,所述基于所述有序组,为数据分配流标识,包括:为不同有序组中的数据
分配不同流标识。
[0031]可选地,所述按照分配的流标识确定该数据到下一跳加速单元的路径,包括:
[0032]确定所述加速单元到所述目标加速单元的路由;
[0033]在所述路由中确定所述加速单元的下一跳加速单元;
[0034]确定所述加速单元到所述下一跳加速单元的多条路径;
[0035]在所述多条路径中,按照分配的流标识确定该数据到下一跳加速单元的路径。
[0036]可选地,所述在所述多条路径中,按照分配的流标识确定该数据到下一跳加速单元的路径,包括:按照所述加速单元到所述下一跳加速单元的数据的流标识在所述多条路径之间均衡分配的原则,确定该流标识的数据到下一跳加速单元的路径。
[0037]可选地,所述加速单元到下一跳加速单元的数据的流标识按自然数由小到大命名;所述按照所述加速单元到所述下一跳加速单元的数据的流标识在所述多条路径之间均衡分配的原则,确定该流标识的数据到下一跳加速单元的路径,包括:用所述数据的流标识除以所述多条路径的总数的余数,作为索引,选择本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种加速单元,包括:加速处理单元,用于确定待发送到目标加速单元的数据;交换模块,用于:获取所述数据所属的有序组,其中,同一有序组中的数据需要按照发送的顺序接收;基于所述有序组,为数据分配流标识,其中,为同一有序组中的数据分配同一个流标识;并且按照所分配的流标识确定该数据到下一跳加速单元的路径。2.根据权利要求1所述的加速单元,其中,所述交换模块为不同有序组中的数据分配不同流标识。3.根据权利要求1所述的加速单元,其中,所述交换模块包括:流标识分配单元,用于为数据分配流标识;路径确定单元,用于确定所述加速单元到所述目标加速单元的路由,在所述路由中确定所述加速单元的下一跳加速单元,确定所述加速单元到所述下一跳加速单元的多条路径,并在所述多条路径中,按照分配的流标识确定该数据到下一跳加速单元的路径。4.根据权利要求3所述的加速单元,其中,所述按照分配的流标识确定该数据到下一跳加速单元的路径,包括:按照所述加速单元到所述下一跳加速单元的数据的流标识在所述多条路径之间均衡分配的原则,确定该流标识的数据到下一跳加速单元的路径。5.根据权利要求4所述的加速单元,其中,所述加速单元到下一跳加速单元的数据的流标识按自然数由小到大命名,所述按照所述加速单元到所述下一跳加速单元的数据的流标识在所述多条路径之间均衡分配的原则,确定该流标识的数据到下一跳加速单元的路径,包括:用所述数据的流标识除以所述多条路径的总数的余数,作为索引,选择该数据到下一跳加速单元的路径。6.根据权利要求3所述的加速单元,其中,所述交换模块还包括:读取单元,用于从所述加速处理单元读取待发送到目标加速单元的数据,并按照最大允许长度要求切分,其中,所述流标识分配单元为切分后的数据分配流标识。7.根据权利要求6所述的加速单元,其中,流标识分配单元将分配的流标识添加到切分后的数据。8.根据权利要求6所述的加速单元,其中,所述加速处理单元基于待发送到目标加速单元的数据,产生包含数据在所述加速单元的存储地址、和数据所属的有序组的数据转移指令;所述读取单元基于所述数据转移指令中的所述存储地址,读取所述数据;所述加速处理单元基于所述数据转移指令中的所述有序组,分配流标识。9.根据权利要求3所述的加速单元,其中,所述交换模块还包括:交换结构,具有多个端口和开关网络,所述开关网络用于选择性地将所述多个端口中的一个端口与其它加速单元的一个端口相接,形成到...

【专利技术属性】
技术研发人员:袁伟吴政原吴佳朋陆叶
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:

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

1