多维数据任务的处理方法、装置、电子设备及存储介质与流程

文档序号:36101825发布日期:2023-11-21 16:30阅读:38来源:国知局
多维数据任务的处理方法与流程

本技术属于计算机领域,具体涉及一种多维数据任务的处理方法、装置、电子设备及计算机可读存储介质。


背景技术:

1、通常ai(artificial intelligence,人工智能)网络的执行任务和编译任务的任务量尺寸是不同的。在编译的时候,编译器会编译生成包含不同尺寸任务量的任务模板。在真正执行的时候,用户会通过上传执行任务来运行ai网络。对于该待执行任务,可以通过已编译好的不同尺寸的任务模块来组装得到。当待执行任务只有一维的时候,利用任务模板组成这个一维待执行任务,可以有多种优化算法来提高效率,譬如:通过回溯算法直到找到最优的子任务序列。然而,当待执行任务的维度大于一维的时候,适用于一维的这些优化算法,效率将会显著降低,随着维度的升高,效率降低的趋势呈指数级增加。


技术实现思路

1、鉴于此,本技术的目的在于提供一种多维数据任务的处理方法、装置、电子设备及计算机可读存储介质,以改善当前用ai网络执行多维计算任务所存在的处理效率低的问题。

2、本技术的实施例是这样实现的:

3、第一方面,本技术实施例提供了一种多维数据任务的处理方法,包括:获取n维的待执行任务,n为大于等于2的整数;根据所述待执行任务的维度,从预设的多个任务模板中选择用于组成所述待执行任务所需的至多n+1个目标任务模板,其中,每个任务模板的维度数量与所述待执行任务的维度数量相同,每个任务模板中包含用于完成该任务模板所对应任务量的子任务的指令;基于所述目标任务模板和所述待执行任务,得到所述待执行任务对应的任务列表,其中,所述任务列表包括所述目标任务模板,且所述任务列表的任务量之和不小于所述待执行任务的任务量。

4、本技术实施例中,在组成待执行任务时,会根据待执行任务的维度,仅选择所需的目标任务模板(若待执行任务为n维任务,则至多选择n+1个目标任务模板)来构成,并不是选择所有的任务模板,从而可以简化组装流程,提高硬件的执行效率,在得到待执行任务对应的任务列表后,任务列表中每个目标任务模板的指令可发送给ai芯片执行。

5、结合第一方面实施例的一种可能的实施方式,根据所述待执行任务的维度,从预设的多个任务模板中选择用于组成所述待执行任务所需的至多n+1个目标任务模板,包括:从尺寸小于所述待执行任务的尺寸的任务模板中,选择尺寸最大的第一目标任务模板;对于所述待执行任务在各个维度方向上的剩余任务,分别为每个维度方向上的剩余任务,选择任务量尺寸最大但小于对应维度方向上剩余任务尺寸的第二目标任务模板;其中,所述第一目标任务模板和每个维度方向上的第二目标任务模板用于组成所述待执行任务所需的目标任务模板。

6、本技术实施例中,在选择目标任务模板时,选择尺寸小于任务且尺寸最大的模块作为目标任务模板,这样可以减少任务被拆分的次数,从而可以减少硬件的执行次数,并且采用上述方式,最多需要(n+1,n为待执行任务的维度)个目标任务模板即可组成待执行任务,有利于提高在任务组成过程中的效率,目标任务模板越少对应的任务流程越简单。

7、结合第一方面实施例的一种可能的实施方式,在分别为每个维度方向上的剩余任务,选择任务量尺寸最大但小于对应维度方向上剩余任务尺寸的第二目标任务模板之前,所述方法还包括:根据所述待执行任务和所述第一目标任务模块,确定所述待执行任务在每一个维度方向上的剩余任务。

8、本技术实施例中,根据待执行任务和第一目标任务模块能够快速确定待执行任务在每一个维度方向上的剩余任务,以为准确选取每个维度方向上的第二目标任务模块提供保障。

9、结合第一方面实施例的一种可能的实施方式,若按照维度从低到高的处理顺序;根据所述待执行任务和所述第一目标任务模块,确定所述待执行任务在每一个维度方向上的剩余任务,包括: 对于最低维度方向上的剩余任务的大小等于:所述待执行任务在其他维度方向上的尺寸x最低维度上的剩余尺寸,其中,最低维度上的剩余尺寸等于所述待执行任务在最低维度上的大小减去第一目标任务模板在最低维度上的尺寸x所述第一目标任务模板在最低维度上的最大重复次数;对于次低维度方向上的剩余任务的大小等于:所述待执行任务在维度大于次低维度的其他维度方向上的尺寸x次低维度上的剩余尺寸x最低维度的尺寸,其中,次低维度上的剩余尺寸等于所述待执行任务在次低维度上的尺寸减去所述第一目标任务模板在次低维度上的尺寸x所述第一目标任务模板在次低维度上的最大重复次数;最低维度的尺寸等于所述第一目标任务模板在最低维度上的尺寸x所述第一目标任务模板在最低维度的最大重复次数;对于比次低维度更高的第三维度方向上的剩余任务的大小等于:所述待执行任务在维度大于第三维度的其他维度方向上的尺寸x第三维度上的剩余尺寸x次低维度的尺寸x最低维度的尺寸,其中,第三维度上的剩余尺寸等于所述待执行任务在第三维度上的大小减去第一目标任务模板在第三维度上的尺寸x第三维度上的最大重复次数;次低维度的尺寸等于所述第一目标任务模板在次低维度上的尺寸x所述第一目标任务模板在次低维度的最大重复次数;以此类推,对于最高维度方向上的剩余任务的大小等于:最高维度上的剩余尺寸x次高维度的尺寸x……x次低维度的尺寸x最低维度的尺寸,其中,最高维度上的剩余尺寸等于所述待执行任务在最高维度上的大小减去所述第一目标任务模板在最高维度上的尺寸x所述第一目标任务模板在最高维度的最大重复次数;次高维度的尺寸等于所述第一目标任务模板在次高维度上的尺寸x所述第一目标任务模板在次高维度的最大重复次数,其中,“x”表示乘号。

10、本技术实施例中,采用上述串行方式(如按照维度从低到高的处理顺序),可以快速准确的确定待执行任务在每一个维度方向上的剩余任务,并且,使得后续在确定每个维度上的第二目标任务模板时,能够保证重叠部分仅在每个维度自己所在方向上重叠,不会与其他方向重叠,从而可以保证硬件能够并行执行各目标任务模板。

11、结合第一方面实施例的一种可能的实施方式,分别为每个维度方向上的剩余任务,选择任务量尺寸最大但小于对应维度方向上剩余任务尺寸的第二目标任务模板,包括:按照维度从低到高的处理顺序,分别为每个维度方向上的剩余任务,从尺寸小于对应维度方向上的剩余任务的尺寸的任务模板中,选择尺寸最大的第二目标任务模板。

12、本技术实施例中,按照维度从低到高的处理顺序,分别从尺寸小于每个维度方向上的剩余任务的尺寸的任务模板中,选择尺寸最大的第二目标任务模板,即采用串行的方式,先处理最低维度方向上的剩余任务,然后再处理次低维度方向上的剩余任务,以此类推,最后再处理最高维度方向上的剩余任务,这样,可以保证重叠部分仅在每个维度自己所在方向上重叠,不会与其他方向重叠,从而可以保证硬件能够并行执行各目标任务模板。

13、结合第一方面实施例的一种可能的实施方式,从尺寸小于所述待执行任务的尺寸的任务模板中,选择尺寸最大的第一目标任务模板之前,所述方法还包括:对所述多个任务模板按照任务量尺寸大小进行排序。

14、本技术实施例中,通过排序可以更快速的选取出尺寸小于待执行任务的尺寸的任务模板。

15、结合第一方面实施例的一种可能的实施方式,所述对所述多个任务模板按照任务量尺寸大小进行排序,包括:若按照从大到小的任务量尺寸进行排序,对于任务量总量相同的两个任务模板,按照维度从低到高的比较顺序,将所述两个任务模板中同一维度上尺寸大的任务模板排在前。

16、本技术实施例中,若按照从大到小进行排序,对于尺寸相同的两个任务模板,按照维度从低到高的比较顺序,将两个任务模板中同一维度上尺寸大的任务模板排在前,便于后续在选择目标任务模板时,优先选择,由于低维度上的连续数据越多,对于硬件越友好,通过优先选择对硬件越友好的数据,有利于优化硬件性能。

17、结合第一方面实施例的一种可能的实施方式,所述目标任务模板包括第一目标任务模板和每个维度上的第二目标任务模板;基于所述目标任务模板和所述待执行任务,得到所述待执行任务对应的任务列表,包括:根据所述待执行任务和所述第一目标任务模板,确定所述第一目标任务模板的第一重复次数,所述第一重复次数为所述待执行任务的尺寸与所述第一目标任务模板的尺寸的商向下取整所得的数;根据所述待执行任务在每一个维度方向上的剩余任务和第二目标任务模板,确定每个维度上的第二目标任务模板的第二重复次数,所述第二重复次数为每一个维度方向上的剩余任务的尺寸与所述第二目标任务模板的尺寸的商向上取整所得的数;基于所述第一目标任务模板和所述第一重复次数,以及每个所述第二目标任务模板和对应的第二重复次数,得到所述待执行任务对应的任务列表。

18、本技术实施例中,基于第一目标任务模板和第一重复次数,以及每个第二目标任务模板对应的第二重复次数,得到待执行任务对应的任务列表,使得最多需要(n+1,n为待执行任务的维度)个目标任务模板,即可将待执行任务拆分为多个小任务,且每个任务量的循环(重复)次数非常规整,使得每个目标任务模板的基坐标的计算非常简单,由于最多涉及n+1个目标任务模板,因此最多涉及n+1个基坐标,所以后续只需要往硬件发送n+1组命令即可,便于批量发送,有利于提高硬件执行效率。第二方面,本技术实施例还提供了一种多维数据任务的处理装置,包括:获取模块以及处理模块;获取模块,用于获取n维的待执行任务,n为大于等于2的整数;处理模块,用于根据所述待执行任务的维度,从预设的多个任务模板中选择用于组成所述待执行任务所需的至多n+1个目标任务模板,其中,每个任务模板的维度数量与所述待执行任务的维度数量相同,每个任务模板中包含用于完成该任务模板所对应任务量的子任务的指令;并基于所述目标任务模板和所述待执行任务,得到所述待执行任务对应的任务列表,其中,所述任务列表包括所述目标任务模板,且所述任务列表的任务量之和不小于所述待执行任务的任务量。

19、第三方面,本技术实施例还提供了一种处理器,包括:收发器以及内核;收发器,用于获取n维的待执行任务,n为大于等于2的整数;内核,用于根据所述待执行任务的维度,从预设的多个任务模板中选择用于组成所述待执行任务所需的至多n+1个目标任务模板,其中,每个任务模板的维度数量与所述待执行任务的维度数量相同,每个任务模板中包含用于完成该任务模板所对应任务量的子任务的指令;基于所述目标任务模板和所述待执行任务,得到所述待执行任务对应的任务列表,其中,所述任务列表包括所述目标任务模板,且所述任务列表的任务量之和不小于所述待执行任务的任务量。

20、第四方面,本技术实施例还提供了一种电子设备,其特征在于,包括:存储器和处理器,所述处理器与所述存储器连接;所述存储器,用于存储计算机程序;所述处理器,用于执行所述存储器中的计算机程序,以执行如上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。

21、第五方面,本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器运行时,执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。

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