[发明专利]为神经网络生成并行计算方案在审
申请号: | 202080038111.5 | 申请日: | 2020-03-27 |
公开(公告)号: | CN113994350A | 公开(公告)日: | 2022-01-28 |
发明(设计)人: | 李翀;蒂博特·塔雄;王宏兴;柴柯伦;刘畅 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06N3/063 | 分类号: | G06N3/063;G06N3/08 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 神经网络 生成 并行 计算 方案 | ||
1.一种用于确定神经网络的并行计算方案的设备,其特征在于,用于:
接收所述神经网络的计算图;
将所述计算图变换为包括多个递归子图的递归数据流图,其中,每个递归子图是另一递归子图和算子节点的元组或者空图;
基于并行计算设备的数量确定切分递归的次数;
对于每次切分递归,
确定与所述数据流图相关联的多个算子节点对应的多个成本;
基于所述多个成本的从高到低的顺序,确定所述多个递归子图的处理顺序;
按照所述确定的处理顺序处理所述多个递归子图,其中,处理递归子图包括:为与所述递归子图的算子节点相关联的张量选择切分轴;以及
输出切分方案,其中,所述切分方案包括与所述多个算子节点相关联的每个张量的切分轴。
2.根据权利要求1所述的设备,其特征在于,所述设备还用于:
确定所述切分递归的次数,使得2N等于所述并行计算设备的数量,其中,N为所述切分递归的次数。
3.根据权利要求1或2所述的设备,其特征在于,所述设备还用于:
基于所述并行计算设备之间要为每个算子节点传输的数据量,确定所述多个算子节点对应的所述多个成本。
4.根据前述任一权利要求所述的设备,其特征在于,所述设备还用于:
基于算子内通信成本,为与所述算子节点相关联的所述张量选择所述切分轴,其中,所述算子内通信成本包括所述并行计算设备之间要为所述算子节点传输的数据量。
5.根据权利要求4所述的设备,其特征在于,所述设备还用于:
如果在当前切分递归中没有为相邻算子节点确定切分轴,则基于所述算子内通信成本,为与所述算子节点相关联的所述张量选择所述切分轴。
6.根据权利要求1至4中任一项所述的设备,其特征在于,所述设备还用于:
基于算子间通信成本,为与所述算子节点相关联的所述张量选择所述切分轴,其中,所述算子间通信成本包括所述并行计算设备之间基于所述算子节点与相邻算子节点间的共享张量执行所述相邻算子节点或者基于相邻算子节点的输出执行所述算子节点所要传输的数据量。
7.根据权利要求4和6所述的设备,其特征在于,所述设备还用于:
如果在所述当前切分递归中为所述相邻算子节点或另一相邻算子节点确定了至少一个切分轴,则基于所述算子内通信成本和所述算子间通信成本,为与所述算子节点相关联的所述张量选择所述切分轴。
8.根据前述任一权利要求所述的设备,其特征在于,所述设备还用于:
判断所述切分方案是否符合与所述并行计算设备相关联的至少一个内存需求;以及
如果确定所述切分方案符合与所述并行计算设备相关联的所述至少一个内存需求,则输出所述切分方案。
9.一种用于确定神经网络的并行计算方案的方法,其特征在于,所述方法包括:
接收所述神经网络的计算图;
将所述计算图变换为包括多个递归子图的递归数据流图,其中,每个递归子图是另一递归子图和算子节点的元组或者空图;
基于并行计算设备的数量确定切分递归的次数;
对于每次切分递归,
确定与所述数据流图相关联的多个算子节点对应的多个成本;
基于所述多个成本的从高到低的顺序,确定所述多个递归子图的处理顺序;
按照所述确定的处理顺序处理所述多个递归子图,其中,处理递归子图包括:为与所述递归子图的算子节点相关联的张量选择切分轴;
输出切分方案,其中,所述切分方案包括与所述多个算子节点相关联的每个张量的切分轴。
10.根据权利要求9所述的方法,其特征在于,还包括:
确定所述切分递归的次数,使得2N等于所述并行计算设备的数量,其中,N为所述切分递归的次数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202080038111.5/1.html,转载请声明来源钻瓜专利网。