[发明专利]一种分布式计算图修改的方法和设备有效
申请号: | 202010690038.1 | 申请日: | 2020-07-17 |
公开(公告)号: | CN111882073B | 公开(公告)日: | 2022-05-31 |
发明(设计)人: | 赵涟水;吴韶华 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G06N20/00 | 分类号: | G06N20/00 |
代理公司: | 北京连和连知识产权代理有限公司 11278 | 代理人: | 张腾;李红萧 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 计算 修改 方法 设备 | ||
本发明提供了一种分布式计算图修改的方法和设备,该方法包括以下步骤:响应于分布式计算图需要做修改模拟,建立非分布式计算图并模拟得到非分布式计算图的修改策略;获取待修改的多GPU分布式计算图,并判断分层_版本号文件是否存在;响应于分层_版本号文件存在,基于修改策略将多GPU分布式计算图进行修改。通过使用本发明的方案,能够极大减少深度学习大模型分布式训练中计算图修改的耗时,加速了模型开发训练过程。
技术领域
本领域涉及计算机领域,并且更具体地涉及一种分布式计算图修改的方法和设备。
背景技术
深度学习计算过程在Tensorflow、Pytorch等深度学习框架中可用计算图表示,为了使深度学习大模型能够在GPU(图形处理器)上训练,我们需要对原来的计算图进行修改。但是随着使用GPU数量的增大,修改计算图的成本也线性增加,如果GPU数量非常大,这带来的耗时将会非常大。比如通常的做法就是对每一个GPU上的计算图进行制定修改策略和实施修改,且每次训练之前都要重复这样的过程,这给模型训练带来了很多不必要的耗时。
当前的一种技术方案是对每一个GPU上的计算图逐一进行制定修改策略,其过程包括计算图拓扑层信息提取和数据搬运策略模拟,在运行时间上,一般需要几分钟,因此在多GPU时,运行时间可达几十分钟,数小时,甚至更长时间。但是由于每个GPU上的计算图很相似,在对每个GPU上的计算图逐一制定修改策略时,存在很大的重复性;并且随着使用GPU数量的增加,其制定计算图策略的时间将会线性增长,如果GPU数量达到数千个甚至更多,将会带来难以接受的耗时。
发明内容
有鉴于此,本发明实施例的目的在于提出一种分布式计算图修改的方法和设备,通过使用本发明的方法,能够极大减少深度学习大模型分布式训练中计算图修改的耗时,加速了模型开发训练过程。
基于上述目的,本发明的实施例的一个方面提供了一种分布式计算图修改的方法,包括以下步骤:
响应于分布式计算图需要做修改模拟,建立非分布式计算图并模拟得到非分布式计算图的修改策略;
获取待修改的多GPU分布式计算图,并判断分层_版本号文件是否存在;
响应于分层_版本号文件存在,基于修改策略将多GPU分布式计算图进行修改。
根据本发明的一个实施例,建立非分布式计算图并模拟得到非分布式计算图的修改策略包括:
建立计算图拓扑层,并找出每一层可增加控制边的运算,并将其保存在计算图_版本号文件中;
判断计算图拓扑层是否需要分层;
响应于需要分层,将需要分层建立控制边的信息写在分层_版本号文件中,且重新建立分层后的计算图拓扑层,并找出每一拓扑层可增加控制边的运算,并将运算重写在计算图_版本号文件中;
响应于不需要分层,将数据搬运策略写在搬运策略_版本号文件里。
根据本发明的一个实施例,修改策略包括计算图分层修改、计算图数据搬运修改和计算图数据搬运顺序修改。
根据本发明的一个实施例,响应于分层_版本号文件存在,基于修改策略将多GPU分布式计算图进行修改包括:
判断tower_0是否在分层_版本号文件中的含有被增加控制边的运算中;
响应于tower_0不在运算中且运算与变量相关,判断tower_0是否在控制边的名字中;
响应于tower_0不在控制边的名字中,收集控制边,将控制边放在控制边集合中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010690038.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:抗紫外线、防触电PVC电源线
- 下一篇:一种高分子硅胶保护膜的制备方法