分布式集群的通信方法技术

技术编号:39651883 阅读:14 留言:0更新日期:2023-12-09 11:20
本发明专利技术公开了一种分布式集群的通信方法

【技术实现步骤摘要】
分布式集群的通信方法、系统、电子设备及可读存储介质


[0001]本专利技术涉及分布式集群领域,特别涉及一种分布式集群的通信方法

系统

电子设备及可读存储介质


技术介绍

[0002]目前深度学习领域中的大模型通常使用混合并行策略在大规模的分布式集群进行并行分布式训练和推理,影响混合并行策略的性能的一大核心关键因素是各集群之间进行统一参数更新的通信效率

在各个集群之间进行统一的参数更新时,各个集群均需要在获取到模型各个阶段的所有参数之后,将所有参数统一上传,考虑到集群间的通信需要
CPU

Central Processing Unit
,中央处理器)和网卡处理,受到
CPU
和网卡的网络带宽的限制,在通信数据量较大时,会造成集群间的通信阻塞,降低通信效率

[0003]因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题


技术实现思路

[0004]本专利技术的目的是提供一种分布式集群的通信方法

系统

电子设备及可读存储介质,能够实现对集群间的网络带宽的充分利用,从而提高通信效率

[0005]为解决上述技术问题,本专利技术提供了一种分布式集群的通信方法,所述分布式集群的通信方法包括:确定分布式集群中的参数更新节点以及多个子集群;所述子集群通过对所述分布式集群中的设备进行划分得到;针对每一所述子集群,获取所述子集群对预设模型的多个阶段依次进行计算得到的多个梯度数据;每一所述阶段包括所述预设模型的至少一个网络层,各个所述阶段包括的所述网络层不同;确定获取到的各个所述阶段的梯度数据的发送次序;每一所述阶段的梯度数据的发送次序和其计算次序呈负相关;按所述发送次序从先到后的顺序将所述梯度数据发送至所述参数更新节点,以便通过所述参数更新节点基于所述梯度数据执行参数更新操作

[0006]在一示例性实施例中,获取所述子集群对预设模型的多个阶段依次进行计算得到的多个梯度数据之后,所述分布式集群的通信方法还包括:针对每一所述阶段,对所述阶段的梯度数据进行分块处理,得到多个数据块,为每一所述阶段的所述数据块分配相同的优先级;各个所述阶段的所述数据块的优先级不同;所述优先级与所述梯度数据的计算次序呈负相关;确定获取到的各个所述阶段的梯度数据的发送次序的过程包括:将带有所述优先级的所述数据块写入第一存储队列;在所述第一存储队列中,根据所述优先级确定各个所述数据块的发送次序,所述
优先级与所述发送次序呈正相关

[0007]在一示例性实施例中,根据所述优先级确定各个所述数据块的发送次序之后,所述分布式集群的通信方法还包括:按所述发送次序从先到后的顺序对各个所述数据块在所述第一存储队列中的位置进行重新排列

[0008]在一示例性实施例中,将带有所述优先级的所述数据块写入第一存储队列的过程包括:将带有所述优先级的所述数据块写入所述子集群对应的所述第一存储队列

[0009]在一示例性实施例中,各个所述阶段的所述数据块的大小相同

[0010]在一示例性实施例中,针对每一所述阶段,对所述阶段的梯度数据进行分块处理,得到多个数据块的过程包括:针对所有所述阶段中的第一个阶段,获取所述第一个阶段对应的所述梯度数据的大小及预设划分数量,根据所述预设划分数量对所述第一个阶段对应的所述梯度数据进行划分得到多个数据块,并确定每一个所述数据块的标准大小;针对所有所述阶段中的第
i
个阶段,获取所述第
i
个阶段对应的所述梯度数据的大小,基于所述数据块的标准大小和所述第
i
个阶段对应的所述梯度数据的大小确定第
i
划分数量,按所述第
i
划分数量对所述第
i
个阶段对应的所述梯度数据进行划分,得到多个数据块,
i
为大于1的整数

[0011]在一示例性实施例中,根据所述预设划分数量对所述第一个阶段对应的所述梯度数据进行划分得到多个数据块,并确定每一个所述数据块的标准大小的过程包括:基于第一计算关系式确定每一个所述数据块的标准大小,所述第一计算关系式为
k=T1/K1
;基于所述数据块的标准大小和所述第
i
个阶段对应的所述梯度数据的大小确定第
i
划分数量的过程包括:基于第二计算关系式确定第
i
个划分数量,所述第二计算关系式为
Ki=Ti/k
;其中,
k
为所述数据块的标准大小,
T1
为所述第一个阶段对应的所述梯度数据的大小,
K1
为所述预设划分数量,
Ki
为所述第
i
划分数量,
Ti
为所述第
i
个阶段对应的所述梯度数据的大小

[0012]在一示例性实施例中,按所述发送次序从先到后的顺序将所述梯度数据发送至所述参数更新节点的过程包括:按第一轮询周期读取所述第一存储队列中的所有所述数据块,将读取到的所述数据块写入聚合发送队列;判断所述聚合发送队列中的所述数据块是否满足发送条件;若是,将所述聚合发送队列中的所述数据块发送至所述分布式集群中的参数更新节点

[0013]在一示例性实施例中,判断所述聚合发送队列中的所述数据块是否满足发送条件的过程包括:确定预设存储阈值;判断所述聚合发送队列中的所述数据块的块数是否等于所述预设存储阈值;
若是,判定所述聚合发送队列中的所述数据块满足发送条件;若否,判定所述聚合发送队列中的所述数据块不满足所述发送条件

[0014]在一示例性实施例中,所述确定预设存储阈值的过程包括:获取所述子集群与所述参数更新节点之间的通信参数;所述通信参数包括通信带宽;基于所述通信参数确定预设存储阈值

[0015]在一示例性实施例中,通过所述参数更新节点基于所述梯度数据执行参数更新操作的过程包括:通过所述参数更新节点监测到所述聚合发送队列和所述第一存储队列中均不包括所述数据块时,基于所述梯度数据执行参数更新操作

[0016]在一示例性实施例中,通过所述参数更新节点基于所述梯度数据执行参数更新操作的过程包括:通过所述参数更新节点执行以下操作:针对每一所述阶段,当获取到的所有所述子集群发送的所述阶段对应的所述数据块时,基于所述阶段对应的所有所述数据块对所述阶段执行参数更新计算,得到所述阶段对应的梯度块,将所述梯度块发送至各个所述子集群,以完成参数更新操作

[0017]在一示例性实施例中,得到所述阶段对应的梯度块,将所述梯度块发送至各个所述子集群的过程包括:得到所述阶段对应的梯度块,为所述梯度块分配所述阶段对应本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种分布式集群的通信方法,其特征在于,所述分布式集群的通信方法包括:确定分布式集群中的参数更新节点以及多个子集群;所述子集群通过对所述分布式集群中的设备进行划分得到;针对每一所述子集群,获取所述子集群对预设模型的多个阶段依次进行计算得到的多个梯度数据;每一所述阶段包括所述预设模型的至少一个网络层,各个所述阶段包括的所述网络层不同;确定获取到的各个所述阶段的梯度数据的发送次序;每一所述阶段的梯度数据的发送次序和其计算次序呈负相关;按所述发送次序从先到后的顺序将所述梯度数据发送至所述参数更新节点,以便通过所述参数更新节点基于所述梯度数据执行参数更新操作
。2.
根据权利要求1所述的分布式集群的通信方法,其特征在于,获取所述子集群对预设模型的多个阶段依次进行计算得到的多个梯度数据之后,所述分布式集群的通信方法还包括:针对每一所述阶段,对所述阶段的梯度数据进行分块处理,得到多个数据块,为每一所述阶段的所述数据块分配相同的优先级;各个所述阶段的所述数据块的优先级不同;所述优先级与所述梯度数据的计算次序呈负相关;确定获取到的各个所述阶段的梯度数据的发送次序的过程包括:将带有所述优先级的所述数据块写入第一存储队列;在所述第一存储队列中,根据所述优先级确定各个所述数据块的发送次序,所述优先级与所述发送次序呈正相关
。3.
根据权利要求2所述的分布式集群的通信方法,其特征在于,根据所述优先级确定各个所述数据块的发送次序之后,所述分布式集群的通信方法还包括:按所述发送次序从先到后的顺序对各个所述数据块在所述第一存储队列中的位置进行重新排列
。4.
根据权利要求2所述的分布式集群的通信方法,其特征在于,将带有所述优先级的所述数据块写入第一存储队列的过程包括:将带有所述优先级的所述数据块写入所述子集群对应的所述第一存储队列
。5.
根据权利要求2所述的分布式集群的通信方法,其特征在于,各个所述阶段的所述数据块的大小相同
。6.
根据权利要求5所述的分布式集群的通信方法,其特征在于,针对每一所述阶段,对所述阶段的梯度数据进行分块处理,得到多个数据块的过程包括:针对所有所述阶段中的第一个阶段,获取所述第一个阶段对应的所述梯度数据的大小及预设划分数量,根据所述预设划分数量对所述第一个阶段对应的所述梯度数据进行划分得到多个数据块,并确定每一个所述数据块的标准大小;针对所有所述阶段中的第
i
个阶段,获取所述第
i
个阶段对应的所述梯度数据的大小,基于所述数据块的标准大小和所述第
i
个阶段对应的所述梯度数据的大小确定第
i
划分数量,按所述第
i
划分数量对所述第
i
个阶段对应的所述梯度数据进行划分,得到多个数据块,
i
为大于1的整数
。7.
根据权利要求6所述的分布式集群的通信方法,其特征在于,根据所述预设划分数量
对所述第一个阶段对应的所述梯度数据进行划分得到多个数据块,并确定每一个所述数据块的标准大小的过程包括:基于第一计算关系式确定每一个所述数据块的标准大小,所述第一计算关系式为
k=T1/K1
;基于所述数据块的标准大小和所述第
i
个阶段对应的所述梯度数据的大小确定第
i
划分数量的过程包括:基于第二计算关系式确定第
i
个划分数量,所述第二计算关系式为
Ki=Ti/k
;其中,
k
为所述数据块的标准大小,
T1
为所述第一个阶段对应的所述梯度数据的大小,
K1
为所述预设划分数量,
Ki
为所述第
i
划分数量,
Ti
为所述第
i
个阶段对应的所述梯度数据的大小
。8.
根据权利要求2所述的分布式集群的通信方法,其特征在于,按所述发送次序从先到后的顺序将所述梯度数据发送至所述参数更新节点的过程包括:按第一轮询周期读取所述第一存储队列中的所有所述数据块,将读取到的所述数据块写入聚合发送队列;判断所述聚合发送队列中的所述数据块是否满足发送条件;若是,将所述聚合发送队列中的所述数据块发送至所述分布式集群中的参数更新节点
。9.
根据权利要求8所述的分布式集群的通信方法,其特征在于,判断所述聚合发送队列中的所述数据块是否满足发送条件的过程包括:确定预设存储阈值;判断所述聚合发送队列中的所述数据块的块数是否等于所述预设存储阈值;若是,判定所述聚合发送队列中的所述数据块满足发送条件;若否,判定所述聚合发送队列中的所述数据块不满足所述发送条件
。10.
根据权利要求9所...

【专利技术属性】
技术研发人员:高开王丽曹芳唐轶男郭振华赵雅倩
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:

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

1