System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于可编程网络的聚合通信优化方法及其系统技术方案_技高网

基于可编程网络的聚合通信优化方法及其系统技术方案

技术编号:43285215 阅读:29 留言:0更新日期:2024-11-12 16:07
本发明专利技术公开了一种基于可编程网络的聚合通信优化方法及系统,其包括计算可编程交换机的位置部署和梯度路由策略,并部署可编程交换机;训练深度神经网络模型,将模型参数的梯度切割为若干梯度数据包;根据梯度路由策略,为每个数据包标识可编程交换机编号,并发送到指定交换机;接收并在网全局梯度数据包;对在网聚合结果进行全局聚合得到全局梯度,将携带全局梯度的ACK包返回所有交换机;收到参数服务器的ACK包时,清空其中携带的梯度片段使用的聚合器的标识符字段,释放相关内存资源,并广播ACK包给所有工作节点;用ACK包中的全局梯度更新深度神经网络模型的参数,完成一次梯度聚合通信,基于更新参数进行下一次梯度计算和聚合通信。

【技术实现步骤摘要】

本专利技术涉及分布式训练技术,具体涉及一种基于可编程网络的聚合通信优化方法及其系统


技术介绍

1、随着人工智能和网络技术的迅猛发展,深度神经网络(dnns)已在新一代应用和服务的各个方面得到了广泛的应用,例如计算机视觉、自然语言处理等。由于数据集规模和模型大小的急剧增长,单一节点算力已无法满足不同应用场景庞大的计算需求,因此,dnn模型通常采用分布式训练(dt)的方法。多数分布式训练使用含有多个工作服务器和至少一个参数服务器(ps)的参数服务器架构来并行训练dnn模型,以缓解机器学习带来的计算开销。

2、一种可行的方法是利用可编程网络设备的可编程性,基于在网计算技术将分布式训练的梯度聚合计算任务卸载到可编程交换机上进行,即在网聚合(ina),从而显著减少网络传输的数据量,加快分布式训练。具体而言,在ps架构中,各工作节点计算出的待全局梯度结果进入网络后,只利用网络的传输功能,即交换机只负责转发,使梯度数据最终到达ps端且仅由ps聚合。得益于可编程网络设备的发展,可编程交换机的可编程性和在网计算能力能够为dt提供在网聚合功能。

3、然而,由于先进可编程网络设备高昂的部署成本和功耗成本等原因,可编程交换机在传统数据中心网络中尚未普及,可编程网络资源的有限性极大地制约了网络的在网计算能力。

4、许多现有工作在优化基于在网聚合的分布式训练系统时,并没有充分考虑实际网络环境中可编程网络设备数量有限这一现实因素的制约。例如,基于在网计算的分布式训练中关于梯度路由优化、交换机内存资源优化或协议设计的一些研究工作,都以网络的在网计算能力充足,可随意部署足够数量的可编程交换机为前提,而忽略了现实网络环境下这类可编程网络设备资源的稀缺性。在这种情况下,如果不能合理规划有限的可编程交换机的部署位置,并充分利用这些设备的计算资源和处理容量,将难以真正实现网络资源的高效利用,也难以最大化发挥ina功能所带来的性能增益,例如降低网络通信开销、提高模型训练效率等。

5、因此,现有工作较为理想化,缺乏对实际网络环境和现实制约因素的考虑,在应用于真实场景时,可能面临严重的资源约束,导致性能无法达到预期,或者需要额外投入大量昂贵的网络设备,大大增加了部署成本。


技术实现思路

1、针对现有技术中的上述不足,本专利技术提供的基于可编程网络的聚合通信优化方法及其系统解决了现有方法未充分考虑实际网络环境中可编程网络设备数量有限而制约了网络的在网计算能力的问题。

2、为了达到上述专利技术目的,本专利技术采用的技术方案为:

3、第一方面,提供一种基于可编程网络的聚合通信优化方法,其包括步骤:

4、s1、根据分布式训练任务和可编程网络拓扑信息,采用贪婪算法和线性规划求解模型计算可编程交换机位置部署和梯度路由策略,并发布给所有工作节点、交换机和参数服务器;

5、s2、根据可编程交换机部署策略,在可编程网络中对应的交换机处部署可编程交换机;

6、s3、对深度神经网络模型进行当前轮次训练,将梯度切割为若干梯度数据包;根据梯度路由策略,给每个梯度数据包标识一个可编程交换机编号,并将数据包发送给指定的可编程交换机;

7、s4、接收梯度数据包,并判断存储的编号是否等于梯度数据包标识的可编程交换机编号,若是,则在聚合器可用时进行在网聚合,不可用时发送给与参数服务器连接的tor交换机进行聚合;否则转发梯度数据包至下一跳交换机;

8、s5、接收所有可编程交换机和tor交换机的局部聚合结果和来自工作节点的未聚合的梯度数据包,并进行全局聚合得到全局梯度,之后将携带全局梯度的ack包返回给所有交换机;

9、s6、接收到来自参数服务器的ack包时,清空ack包中携带的梯度片段占用的聚合器的标识符字段,释放该聚合器占用的内存资源,并将ack包广播给所有工作节点;

10、s7、采用ack包中的全局梯度更新深度神经网络模型的参数,完成一次梯度聚合通信,之后返回步骤s3进行下一次梯度聚合通信,直至深度神经网络模型训练完成。

11、进一步地,采用贪婪算法和线性规划求解模型计算可编程交换机位置部署和梯度路由策略的方法包括:

12、s11、初始化部署位置集合为空和未选集合为可编程网络中所有交换机;

13、s12、采用贪婪算法遍历未选交换机集合,选择在任一交换机布置可编程交换机,生成若干可部署可编程交换机的候选位置集合;

14、s13、对于每个候选位置集合,采用线性规划求解模型计算可编程交换机在当前部署位置下的聚合吞吐最优值;

15、s14、选取所有聚合吞吐最优值中的最大值对应的交换机作为可编程交换机部署位置,并将其从未选集合移动至部署位置集合;

16、s15、判断部署位置集合中交换机的数量是否小于可编程交换机的最大部署数量;若是,则返回步骤s12,否则进入步骤s16;

17、s16、输出部署位置集合sm作为可编程交换机部署策略,,采用聚合吞吐最优值计算过程中得到的和作为梯度路由策略;

18、其中,为工作节点w到可编程交换机s的聚合吞吐;为工作节点w向参数服务器d发送梯度进行全局聚合的梯度发送速率。

19、进一步地,线性规划求解模型的表达式为:

20、p2maxγ

21、

22、其中,p2为线性规划求解模型;max为取最大值;γ为聚合吞吐;s为部署位置集合;sd为与参数服务器d相连的tor交换机;w为分布式训练任务使用的工作节点集合;c为可编程交换机的处理容量限制;为可编程交换机s直接发送聚合结果给参数服务器d的发送速率;为可编程交换机s发送局部聚合结果到tor交换机sd的速率;为tor交换机sd直接发送聚合结果给参数服务器d的发送速率;为工作节点w发送局部聚合结果到交换机sd的速率;和分别为工作节点到可编程交换机、工作节点到参数服务器、可编程交换机到参数服务器的tor交换机、可编程交换机到参数服务器的传输梯度在链路e上产生的流量负载;为链路e上的容量限制。

23、进一步地,流量负载和的表达式为:

24、

25、其中,e为链路;ψ为链路e是否属于某个链路集合的指示函数;pw,d为工作节点w到参数服务器d的最短路径上的链路集合;为交换机s到与参数服务器d相连的tor交换机sd的最短路径上的链路集合。

26、进一步地,聚合器可用的确定方法包括:

27、根据接收的梯度数据包标识的梯度数据包编号,通过一致性哈希算法计算聚合当前梯度数据包的聚合器索引;

28、当接收的梯度数据包的编号与通过哈希算法计算得出的聚合器标识的梯度块编号匹配,则聚合器可用,将梯度数据包分配至聚合器等待在网聚合;

29、当接收的梯度数据包的编号与通过哈希算法计算得出的聚合器标识的梯度块编号不匹配,则聚合器不可用。

30、第二方面,提供一种基于可编程网络的聚合通信本文档来自技高网...

【技术保护点】

1.基于可编程网络的聚合通信优化方法,其特征在于,包括步骤:

2.根据权利要求1所述的聚合通信优化方法,其特征在于,计算可编程交换机位置部署和梯度路由策略的方法包括:

3.根据权利要求1或2所述的聚合通信优化方法,其特征在于,线性规划求解模型的表达式为:

4.根据权利要求3所述的聚合通信优化方法,其特征在于,流量负载和的表达式为:

5.根据权利要求1所述的聚合通信优化方法,其特征在于,聚合器可用的确定方法包括:

6.一种基于可编程网络的聚合通信优化系统,其特征在于,包括:

7.根据权利要求6所述的聚合通信优化系统,其特征在于,在控制平面中采用贪婪算法和线性规划求解模型计算可编程交换机位置部署和梯度路由策略的方法包括:

8.根据权利要求7所述的基于可编程网络的聚合通信优化系统,其特征在于,线性规划求解模型的表达式为:

【技术特征摘要】

1.基于可编程网络的聚合通信优化方法,其特征在于,包括步骤:

2.根据权利要求1所述的聚合通信优化方法,其特征在于,计算可编程交换机位置部署和梯度路由策略的方法包括:

3.根据权利要求1或2所述的聚合通信优化方法,其特征在于,线性规划求解模型的表达式为:

4.根据权利要求3所述的聚合通信优化方法,其特征在于,流量负载和的表达式为:

5.根据权利要求1所述...

【专利技术属性】
技术研发人员:罗龙陈栖栖杨树林范文琪虞红芳孙罡
申请(专利权)人:电子科技大学
类型:发明
国别省市:

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

1