[发明专利]一种用于分布式训练的流式计算系统、方法及装置在审
申请号: | 202111414882.2 | 申请日: | 2021-11-25 |
公开(公告)号: | CN114048039A | 公开(公告)日: | 2022-02-15 |
发明(设计)人: | 谭光明;朱泓睿;母翟龙;王展;元国军 | 申请(专利权)人: | 中科计算技术西部研究院 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F13/28 |
代理公司: | 重庆强大凯创专利代理事务所(普通合伙) 50217 | 代理人: | 黄书凯 |
地址: | 401120 重*** | 国省代码: | 重庆;50 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 分布式 训练 计算 系统 方法 装置 | ||
本发明涉及分布式计算技术领域,具体公开了一种用于分布式训练的流式计算系统、方法及装置,其中装置包括:数据接收模块,用于接收数据,从数据中解析计算数据和通信控制信息;缓存管理模块,包括若干缓存单元集合,缓存单元集合用于存储计算数据;控制模块,用于获取通信控制信息,基于通信控制信息进行调度,标识缓存单元集合内就绪的计算数据;状态管理模块,用于更新集合通信过程的状态;计算管理模块,用于根据集合通信过程的状态调用计算设备对缓存单元集合内就绪的计算数据进行计算;数据发送模块,用于发送通信控制信息和已计算完成的计算数据。采用本发明的技术方案能够有效提高计算设备和通信设备的利用率。
技术领域
本发明涉及分布式计算技术领域,特别涉及一种用于分布式训练的流式计算系统、方法及装置。
背景技术
随着深度学习在各个领域特别是计算机视觉和自然语言处理领域的快速发展,模型参数量和训练数据量也在快速的增加,内存、显存和计算设备的约束导致传统单机训练模式走向终结,进而转向大规模分布式训练。目前大规模分布式深度学习应用场景中,参数服务器和集合通信是两种主要的设计模式,而集合通信是分布式深度学习训练中常用的通信模式。
集合通信涉及多个通信节点之间数据信息的交流,通信节点接收来自其他节点的数据进行集合操作,然后将计算后的结果发送给下一个节点。
目前分布式深度学习训练普遍使用网络传输加计算设备执行集合操作的模式来实现集合通信,主机中的网卡接收到完整数据后交由主机中的计算设备(如:GPU、TPU等)进行相应计算。
上述的技术方案在实际应用中会导致网络具有较低的吞吐率,原因主要有:(1)当集合通信过程中消息较大时,网卡接收完整的数据需要等待较长的时间,而此时计算设备处于闲置状态,设备利用率低;(2)缓存区资源利用率低,在具有较多通信节点时,网卡需要缓存所有通信节点的数据再进行集合操作,非实时的计算导致较多的缓存资源一直被占用。
因此,需要一种能够提高计算设备和通信设备的利用率的用于分布式训练的流式计算系统、方法及装置。
发明内容
本发明的目的之一在于提供一种用于分布式训练的流式计算装置,能够有效提高计算设备和通信设备的利用率。
为了解决上述技术问题,本申请提供如下技术方案:
一种用于分布式训练的流式计算装置,包括:
数据接收模块,用于接收数据,从数据中解析计算数据和通信控制信息;
缓存管理模块,包括若干缓存单元集合,缓存单元集合用于存储计算数据;
控制模块,用于获取通信控制信息,基于通信控制信息进行调度,标识缓存单元集合内就绪的计算数据;
状态管理模块,用于更新集合通信过程的状态;
计算管理模块,用于根据集合通信过程的状态调用计算设备对缓存单元集合内就绪的计算数据进行计算;
数据发送模块,用于发送通信控制信息和已计算完成的计算数据。
基础方案原理及有益效果如下:
本方案中,缓存管理模块建立缓存管理机制,将多个通信实体的计算数据分别存储在不同的缓存单元集合中,并且通过控制模块标识就绪的计算数据,使得计算数据的接收和后续的计算解耦,更易于实现各个模块之间的流水。
通过调用计算设备对缓存单元集合内就绪的计算数据进行计算,不必等待所有计算数据传输完成再计算,可以提高计算的效率。通过数据发送模块及时将已计算完成的计算数据发送,可以释放计算完成后的计算数据所占用的存储空间。
综上,本方案通过接收-计算-发送的三级流水结构,使得各个模块能够并行计算,有效提高了计算设备和通信设备的利用率,以及网络吞吐率。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科计算技术西部研究院,未经中科计算技术西部研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111414882.2/2.html,转载请声明来源钻瓜专利网。