[发明专利]一种分布式通信算法和装置有效
申请号: | 201911394910.1 | 申请日: | 2019-12-30 |
公开(公告)号: | CN111147374B | 公开(公告)日: | 2022-03-15 |
发明(设计)人: | 孙红岩 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | H04L45/12 | 分类号: | H04L45/12;H04L45/00;H04L47/10 |
代理公司: | 济南诚智商标专利事务所有限公司 37105 | 代理人: | 王敏 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 通信 算法 装置 | ||
本发明实施例公开了一种分布式通信算法和装置,包括:应用Dijkstra算法寻找通信线路上子数据块传输的最短路径;应用遗传算法寻找通信线路上总数据块切分为多个子数据块的最优解。本发明提供的分布式通信算法和装置,通过Dijkstra算法求取子数据块从起始节点运行到终止节点的最短路径,通过遗传算法算出通信线路上总数据块切分为多个子数据块的最优解,解决了现有技术中同时存在多种通信协议的情况下,寻找总数据块在通信线路上最佳路径和最优数据块的问题,缩短了总数据块在通信线路上reduce的总时间,从而实现对通信的加速。
技术领域
本发明涉及通信技术领域,具体涉及一种分布式通信算法和装置。
背景技术
随着科学计算技术的发展,神经网络已经取得了飞速的发展,并且越来越多的应用到日常生活和生产中,给人民生活带来了极大的便利。与此同时,也存在越来越多的模型需要训练,因此,分布式训练成为了训练首选,然而分布式训练中普遍存在的问题是当模型过大,参数过多时分布式系统之间的通信成为了瓶颈,尤其涉及到多节点通信。
目前分布式训练的通信算法有All reduce ring(环形规约通信算法)、Allreduce ring chunked(分块环形规约通信算法)、All reduce halving doubling(二叉树状规约通信算法)、All reduce bcube(块状规约算法)等通信算法,这些通信算法分别从环状通信和树状通信两种方式来优化分布式通信,但是这些算法的一个普遍共通性是假设通信是同一种通信方式。
而在实际分布式训练时通信线路往往特别复杂,其中除了包括GPU之间的通信,还包括CPU之间的通信,目前所用的通信算法在一种通信协议下可以起到加速分布式通信的效果,但是同时存在多种通信协议的情况下,存在如何寻找最佳路径和最优数据块的问题。
发明内容
本发明实施例中提供了一种分布式通信算法和装置,以解决现有技术中同时存在多种通信协议的情况下寻找最佳路径和最优数据块的问题,进而使传输速度最快。
本发明实施例公开了如下技术方案:
本发明第一方面提供了一种分布式通信算法,包括:
应用Dijkstra算法寻找通信线路上子数据块传输的最短路径;
应用遗传算法寻找通信线路上总数据块切分为多个子数据块的最优解。
进一步地,所述寻找通信线路上子数据块传输最短路径的过程包括:
计算两个节点间路径的权值,权值公式为t=Aα+Bβ+γ,
其中α为通信启动时间,γ为软件运行时间,β为传输每字节耗费时间,S为通信总字节数,A为通信步骤,B为通信线上的同时运行的字节数;
应用Dijkstra算法求取子数据块从起始节点运行到终止节点的最短路径;
在终止节点处统计所有子数据块的完备性,所有节点数据块完备后传输结束。
进一步地,所述计算两个节点间路径的权值中,A、B在不同通信算法上的值分别为:
All reduce ring,A=P-1,B=P*S,
All reduce ring chunked,A=4P,B=2*S,
All reduce halving doubling,A=2*lg(P),B=2*S,
All reduce bcube,A=2*log_C(P),B=2*Sum(S/C^s),
其中,P为进程的数量,S为总数据块的大小,C为通信对的基数,s为0to log_C(P)-1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911394910.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于云计算的指火一体化控制方法及系统
- 下一篇:一种网络资产画像提取方法