一种数据处理方法、装置及设备制造方法及图纸

技术编号:38686103 阅读:16 留言:0更新日期:2023-09-02 22:59
本发明专利技术提供了一种数据处理方法、装置及设备,其中,数据处理方法包括:根据目标树状拓扑,确定目标树高度,以及所述目标树高度下各层分别对应的目标宽度;根据所述目标树高度和目标宽度,以各个处理节点为根构造树;根据所述处理节点的总数量,对总数据块进行等量划分,得到至少两个子块;利用构造的各棵树分别对一个所述子块进行全规约处理。本方案能够支撑实现降低通信步数和依赖链长度,从而降低通信延迟;还能够通过调控宽度避免多打一所造成的通信阻塞,从而提高带宽利用率;很好的解决了现有技术中针对全规约的数据处理方案通信延迟大、存在多打一通信阻塞的问题。存在多打一通信阻塞的问题。存在多打一通信阻塞的问题。

【技术实现步骤摘要】
一种数据处理方法、装置及设备


[0001]本专利技术涉及数据处理
,尤其涉及一种数据处理方法、装置及设备。

技术介绍

[0002]全规约(Allreduce)是一种在多进程、多机间进行数据全同步的操作,被广泛用于分布式系统中,是影响分布式系统性能的重要环节。
[0003]目前,常用的多机通信库有MPI、NCCL等,它们都包含了若干种全规约方法的实现。在实际应用中,它们根据参与同步的节点数与数据量大小来选择某一种具体的方法进行全规约操作。但是,其选择的依据为经验参数,忽视了不同集群的环境差异,在当今硬件高速迭代的环境下表现欠佳。
[0004]另外,从每个具体的全规约方法而言,这些方法存在以下几点不足:
[0005]1)通信步数过多,通信延迟对整体性能影响过大;
[0006]2)每次只进行少量数据块的归并,内存读写开销过大;
[0007]3)存在“all

to

all”的网络流量,带宽竞争降低了网络利用率。
[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]第一处理模块,用于根据所述目标树高度和目标宽度,以各个处理节点为根构造树;
[0038]第一划分模块,用于根据所述处理节点的总数量,对总数据块进行等量划分,得到至少两个子块;
[0039]第二处理模块,用于利用构造的各棵树分别对一个所述子块进行全规约处理。
[0040]可选的,所述利用构造的各棵树分别对一个所述子块进行全规约处理,包括:
[0041]根据第一层对应的目标宽度,确定处理节点的分组,并进行子块的第一归并处理;
[0042]根据所述第一归并处理的第一结果,执行至少一次第一操作,直至各节点分别完成一个子块的全局归并;
[0043]根据所述全局归并对应的第二结果,进行反向节点广播;
[0044]其中,所述第一操作包括:根据当前层对应的目标宽度以及上一归并结果,重新确定处理节点的分组,并再次进行子块的归并处理;
[0045]所述上一归并结果为:上一层所对应的归并处理的结果;
[0046]所述当前层所对应的树高度大于所述上一层所对应的树高度,且所述当前层为所述上一层的相邻层;
[0047]所述上一层所对应的归并处理的子块数量,大于所述当前层所对应的归并处理的子块数量。
[0048]可选的,还包括:
[0049]第一获取模块,用于在根据目标树状拓扑,确定目标树高度,以及所述目标树高度
下各层分别对应的目标宽度之前,根据所述总数量,获取各候选树状拓扑;
[0050]第二获取模块,用于利用开销模型,获取各候选树状拓扑分别对应的开销值;
[0051]第二确定模块,用于根据所述开销值,从所述候选树状拓扑中确定目标树状拓扑;
[0052]其中,所述开销模型包括:内存读写开销因子和带宽竞争因子中的至少一项。
[0053]可选的,还包括:
[0054]第三处理模块,用于在根据所述总数量,获取各候选树状拓扑之前,在所述总数量的因子个数小于门限值的情况下,将所述总数量拆分为第一数量加上第一数值;所述第一数值小于所述第一数量;
[0055]所述根据所述总数量,获取各候选树状拓扑,包括:
[0056]根据所述第一数量和第一数值,获取各候选树状拓扑。
[0057]可选的,确定处理节点的分组,包括:
[0058]将所述第一数量对应的节点进行分组,并将所述第一数值对应的节点,划分到最后一个分组中;
[0059]其中,所述最后一个分组为:所述第一数量对应的节点的分组中的最后一个分组。
[0060]本专利技术实施例还提供了一种数据处理设备,包括:处理器和收发机;
[0061]所述处理器,用于根据目标树状拓扑,确定目标树高度,以及所述目标树高度本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:根据目标树状拓扑,确定目标树高度,以及所述目标树高度下各层分别对应的目标宽度;根据所述目标树高度和目标宽度,以各个处理节点为根构造树;根据所述处理节点的总数量,对总数据块进行等量划分,得到至少两个子块;利用构造的各棵树分别对一个所述子块进行全规约处理。2.根据权利要求1所述的数据处理方法,其特征在于,所述利用构造的各棵树分别对一个所述子块进行全规约处理,包括:根据第一层对应的目标宽度,确定处理节点的分组,并进行子块的第一归并处理;根据所述第一归并处理的第一结果,执行至少一次第一操作,直至各节点分别完成一个子块的全局归并;根据所述全局归并对应的第二结果,进行反向节点广播;其中,所述第一操作包括:根据当前层对应的目标宽度以及上一归并结果,重新确定处理节点的分组,并再次进行子块的归并处理;所述上一归并结果为:上一层所对应的归并处理的结果;所述当前层所对应的树高度大于所述上一层所对应的树高度,且所述当前层为所述上一层的相邻层;所述上一层所对应的归并处理的子块数量,大于所述当前层所对应的归并处理的子块数量。3.根据权利要求1或2所述的数据处理方法,其特征在于,在根据目标树状拓扑,确定目标树高度,以及所述目标树高度下各层分别对应的目标宽度之前,还包括:根据所述总数量,获取各候选树状拓扑;利用开销模型,获取各候选树状拓扑分别对应的开销值;根据所述开销值,从所述候选树状拓扑中确定目标树状拓扑;其中,所述开销模型包括:内存读写开销因子和带宽竞争因子中的至少一项。4.根据权利要求3所述的数据处理方法,其特征在于,在根据所述总数量,获取各候选树状拓扑之前,还包括:在所述总数量的因子个数小于门限值的情况下,将所述总数量拆分为第一数量加上第一数值;所述第一数值小于所述第一数量;所述根据所述总数量,获取各候选树状拓扑,包括:根据所述第一数量和第一数值,获取各候选树状拓扑。5.根据权利要求4所述的数据处理方法,其特征在于,确定处理节点的分组,包括:将所述第一数量对应的节点进行分组,并将所述第一数值对应的节点,划分到最后一个分组中;其中,所述最后一个分组为:所述第一数量对应的节点的分组中的最后一个分组。6.一种数据处理装置,其特征在于,包括:第一确定模块,用于根据目标树状拓扑,确定目标树高度,以及所述目标树高度下各层分别对应的目标宽度;第一处理模块,用于根据所述目标树高度和目标宽度,以各个处理节点为根构造树;
第一划分模块,用于根据所述处理节点的总数量,对总数据块进行等量划分,得到至少两个子块;第二处理模块,用于利用构造的各棵树分别对一个所述子块进行全规约处理。7.根据权利要求6所述的数据处...

【专利技术属性】
技术研发人员:李丹熊典王帅姜友和丛鹏宇
申请(专利权)人:中国移动通信有限公司研究院中国移动通信集团有限公司
类型:发明
国别省市:

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

1