一种用多核处理器实现神经网络模型拆分方法及相关产品与流程

文档序号:19994353发布日期:2020-02-22 02:35阅读:来源:国知局

技术特征:

1.一种用多核处理器实现神经网络模型拆分方法,其特征在于,所述方法包括:

根据所述神经网络模型对应计算图中的目标算子,确定与所述目标算子相关联的张量数据的拆分状态集合;其中,所述张量数据包括输入张量数据和输出张量数据;

遍历所述拆分状态集合,确定相邻拆分状态集合之间所述算子的张量数据的拆分路径以及所述拆分路径的权重;

根据所述拆分路径的权重,确定所述目标算子的张量数据的目标拆分路径,其中所述目标拆分路径为所述目标算子的张量数据对应的多条拆分路径中的一条,当所述多条拆分路径对应两个以上拆分状态集合时,对于输入张量数据对应拆分状态集合,仅保留所述目标拆分路径对应的拆分状态;

根据所述目标拆分路径对所述计算图中的目标算子的张量数据进行拆分,以分配到多核处理器的对应核进行处理。

2.根据权利要求1所述的方法,其特征在于,确定所述目标算子的张量数据的目标拆分路径的步骤包括:

遍历所述目标算子相关联的张量数据的拆分状态集合,对当前拆分状态集合,遍历每一拆分状态,获得所有指向当前拆分状态的有向边以及所述有向边的起点对应的拆分状态到所述目标算子相关联的输入张量数据的拆分状态之间的拆分路径;

根据所述有向边的权重和所述有向边对应的起始拆分状态到所述目标算子的输入张量数据的拆分状态之间的拆分路径的权重确定所述当前拆分状态到所述目标算子的输入张量数据的拆分状态之间的拆分路径;其中,所述拆分路径的权重根据所述拆分路径对应的所有有向边的权重确定;

遍历完所述目标算子的所有拆分状态集合后,获得所述目标算子的输入张量数据的拆分状态集合与所述目标算子的输出张量数据的拆分状态集合之间的目标拆分方式。

3.根据权利要求1所述的方法,其特征在于,所述确定所述目标算子的张量数据的目标拆分路径,包括:

遍历所述目标算子的所有拆分状态集合,对当前拆分状态集合,遍历每一拆分状态,获得所有以当前拆分状态为起点的有向边以及所述有向边的终点对应的拆分状态到所述目标算子的输出张量数据的拆分状态之间的拆分路径;

根据所述有向边的权重和所述有向边的终点对应的拆分状态到所述目标算子的输出张量数据的拆分状态之间的拆分路径的权重确定所述当前拆分状态到所述目标算子的输出张量数据的拆分状态之间的拆分路径;其中,所述拆分路径的权重根据所述拆分路径对应的所有有向边的权重确定;

遍历完所述目标算子的所有拆分状态集合后,获得所述目标算子的输入张量数据的拆分状态集合与所述目标算子的输出张量数据的拆分状态集合之间的目标拆分路径。

4.根据权利要求2所述的方法,其特征在于,所述当所述多条拆分路径对应两个以上拆分状态集合时,仅保留所述目标拆分路径对应的拆分状态,包括:

当前算子的输出张量数据被至少两个算子作为输入张量数据,或当前算子具有至少两个输出张量数据时,当前算子的输出张量数据的拆分状态集合中保留一个拆分状态,且保留的拆分状态经由当前算子的同一有向边确定。

5.根据权利要求3所述的方法,其特征在于,所述当所述多条拆分路径对应两个以上拆分状态集合时,仅保留所述目标拆分路径对应的拆分状态,包括:

当前算子具有至少两个输入张量数据时,当前算子的输入张量数据的拆分状态集合中保留一个拆分状态,且所述拆分状态经由所述算子的同一有向边确定。

6.根据权利要求1所述的方法,其特征在于,所述目标算子相关联的输入张量数据的拆分状态集合中的拆分状态根据所述算子的运算逻辑和对应输出张量数据的拆分状态集合中的拆分状态确定。

7.如权利要求1所述的方法,其特征在于,所述目标算子相关联的输出张量数据的拆分状态集合中的拆分状态根据所述算子的运算逻辑和对应输入张量数据的拆分状态集合中的拆分状态确定。

8.如权利要求2或3所述的方法,其特征在于,所述有向边的权重根据所述拆分路径对应的所述算子的运算操作类型、所述算子的张量数据经所述拆分路径获取的对应子数据的数据规模、每个处理器核的吞吐率和访存带宽确定。

9.一种用多核处理器实现神经网络模型拆分装置,其特征在于,所述装置包括:

第一确定单元,用于根据所述神经网络模型对应计算图中的目标算子,确定与所述目标算子相关联的张量数据的拆分状态集合;其中,所述张量数据包括输入张量数据和输出张量数据;

遍历单元,用于遍历所述拆分状态集合,确定相邻拆分状态集合之间所述算子的张量数据的拆分路径以及所述拆分路径的权重;

第二确定单元,用于根据所述拆分路径的权重,确定所述目标算子的张量数据的目标拆分路径,其中所述目标拆分路径为所述目标算子的张量数据对应的多条拆分路径中的一条,当所述多条拆分路径对应两个以上拆分状态集合时,对于输入张量数据对应拆分状态集合,仅保留所述目标拆分路径对应的拆分状态;

拆分单元,用于根据所述目标拆分路径对所述计算图中的目标算子的张量数据进行拆分,以分配到多核处理器的对应核进行处理。

10.一种计算机设备,其特征在于,包括处理器和存储器,所述处理器和存储器相互连接,其中,所述处理器包括通用处理器和人工智能处理器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-8任一项所述的方法。

11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-8任一项所述的方法。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1