The invention discloses a dispatching scheme generation method and device, which are applied in the field of data processing technology. The method includes: the terminal obtains the initial operation information input by the user. According to the initial operation information, a directed acyclic graph model is established. Multiple task nodes of the directed acyclic graph model correspond to multiple initial operations one by one. The data dependence relationship between task nodes and the data transmission dependence relationship between the initial operations are the same, and the execution time of each task node is equal to the execution time of the corresponding initial operations. The different times of repeated execution of directed acyclic graph model are taken as different periods, and the task nodes in each period are sorted according to the execution time, and then allocated to the processing units with the minimum completion time among the processing units of the terminal in turn. The corresponding scheduling schemes for each period are obtained, and the initial scheduling schemes are determined from multiple scheduling schemes. This method can improve the utilization and computational efficiency.
【技术实现步骤摘要】
调度方案生成方法及装置
本专利技术涉及数据处理
,尤其涉及调度方案生成方法及装置。
技术介绍
随着我国计算机技术的快速发展,为了提高计算效率,利用并行处理单元进行数据处理的方法已被广泛应用开来,如多核处理器。其中,深度学习的推理过程具有高度的并行性,不同样本之间的计算过程没有相互依赖,在利用并行处理单元的基础上,通过合理的调度可以起到极大地加速其深度学习的推理过程。在目前的调度方案生成方法中,通常将多个不同样本的相同任务安排在该任务与其他任务的传输数据的等待时间内,以提高并行处理单元的利用率和计算效率。但是,若该任务的执行时间远远大于其他的任务的执行时间,达到稳定状态前的前序时间较长,这就会存在利用率和计算效率较低的问题。
技术实现思路
本专利技术实施例的主要目的在于提供调度方案生成方法及装置,可提高利用率和计算效率。本专利技术实施例第一方面提供了一种调度方案生成方法,所述方法包括:终端获取用户输入的初始操作信息,所述初始操作信息包括多个初始操作、各初始操作之间的传输数据和各初始操作的执行时间;根据所述初始操作信息建立有向无环图模型,所述有向无环图模型的多个任务节点与多个所述初始操作一一对应,各所述任务节点之间的数据依赖关系与各所述初始操作之间的传输数据的数据依赖关系相同,各所述任务节点的执行时间与对应的初始操作的执行时间相等;将所述有向无环图模型重复执行不同次数作为不同的周期,并将各所述周期内的多个任务节点根据执行时间的长短进行排序,依次分配给所述终端的多个处理单元中完成时间最小的处理单元,得到对应各所述周期的调度方案,并从多个所述调度方案中确定初始调 ...
【技术保护点】
1.一种调度方案生成方法,其特征在于,所述方法包括:终端获取用户输入的初始操作信息,所述初始操作信息包括多个初始操作、各初始操作之间的传输数据和各初始操作的执行时间;根据所述初始操作信息建立有向无环图模型,所述有向无环图模型的多个任务节点与多个所述初始操作一一对应,各所述任务节点之间的数据依赖关系与各所述初始操作之间的传输数据的数据依赖关系相同,各所述任务节点的执行时间与对应的初始操作的执行时间相等;将所述有向无环图模型重复执行不同次数作为不同的周期,并将各所述周期内的多个任务节点根据执行时间的长短进行排序,依次分配给所述终端的多个处理单元中完成时间最小的处理单元,得到对应各所述周期的调度方案,并从多个所述调度方案中确定初始调度方案,所述初始调度方案包括所述初始调度方案内的各任务节点与分配的处理单元的分配关系以及所述初始调度方案内的各任务节点的开始处理时间。
【技术特征摘要】
1.一种调度方案生成方法,其特征在于,所述方法包括:终端获取用户输入的初始操作信息,所述初始操作信息包括多个初始操作、各初始操作之间的传输数据和各初始操作的执行时间;根据所述初始操作信息建立有向无环图模型,所述有向无环图模型的多个任务节点与多个所述初始操作一一对应,各所述任务节点之间的数据依赖关系与各所述初始操作之间的传输数据的数据依赖关系相同,各所述任务节点的执行时间与对应的初始操作的执行时间相等;将所述有向无环图模型重复执行不同次数作为不同的周期,并将各所述周期内的多个任务节点根据执行时间的长短进行排序,依次分配给所述终端的多个处理单元中完成时间最小的处理单元,得到对应各所述周期的调度方案,并从多个所述调度方案中确定初始调度方案,所述初始调度方案包括所述初始调度方案内的各任务节点与分配的处理单元的分配关系以及所述初始调度方案内的各任务节点的开始处理时间。2.如权利要求1所述的调度方案生成方法,其特征在于,所述方法还包括:根据所述初始调度方案确定所述初始调度方案内的各任务节点的重定时值;根据所述初始调度方案内的各任务节点的执行时间和各所述任务节点之间的数据依赖关系,调整所述初始调度方案内的各任务节点的开始处理时间和重定时值,得到目标调度方案,所述目标调度方案包括所述初始调度方案内的各任务节点与分配的处理单元的分配关系、初始调度方案内的各任务节点调整后的开始处理时间以及初始调度方案内的各任务节点调整后的重定时值。3.如权利要求1所述的调度方案生成方法,其特征在于,所述将所述有向无环图模型重复执行不同次数作为不同的周期,并将各所述周期内的多个任务节点根据执行时间的长短进行排序,依次分配给所述终端的多个处理单元中完成时间最小的处理单元,得到对应各所述周期的调度方案,并从多个所述调度方案中确定初始调度方案包括:将所述有向无环图模型执行一次作为一个周期,所述周期内的全部的任务节点为待分配任务节点,并将所述待分配任务节点按照所述执行时间的大小顺序进行排序;将排在首位的待分配任务节点分配给所述终端的多个处理单元中完成时间最小的处理单元,并根据所述排在首位的待分配任务节点的执行时间更新所述完成时间最小的处理单元的完成时间;将排在第二位的待分配任务节点作为新的排在首位的待分配任务节点,并执行所述将排在首位的待分配任务节点分配给所述终端的多个处理单元中完成时间最小的处理单元的步骤,直至将全部的所述待分配任务节点分配完毕,得到对应所述周期的调度方案;所述调度方案包括所述调度方案内的各任务节点的开始处理时间,根据所述调度方案内的各任务节点的开始处理时间和所述调度方案内的各任务节点的执行时间,确定所述调度方案内的各任务节点的结束处理时间的最大值;根据所述终端的处理单元的数量、所述有向无环图形模型的执行次数和所述调度方案内的各任务节点的结束处理时间的最大值,得到所述调度方案的利用率,并判断所述调度方案的利用率是否大于预设利用率阈值;若所述调度方案的利用率大于预设利用率阈值,则所述调度方案为初始调度方案。若所述调度方案的利用率不大于预设利用率阈值,则增加所述有向无环图模型的执行次数,将增加执行次数后的有向无环图模型作为一个新的周期,执行所述周期内的全部的任务节点为待分配任务节点,并将所述待分配任务节点按照所述执行时间的大小顺序进行排序的步骤,直至所述有向无环图形模型的执行次数达到该预设次数,则各调度方案中利用率最大的调度方案为所述初始调度方案。4.如权利要求3所述的调度方案生成方法,其特征在于,通过如下公式,根据所述终端的处理单元的数量、所述有向无环图形模型的执行次数和所述调度方案内的各任务节点的结束处理时间的最大值,得到所述调度方案的利用率:其中,V表示所述调度方案中任务节点Ti(i=1,...,n)的集合,Xp表示所述有向无环图形模型的执行次数,ci表示任务节点Ti的执行时间,h表示所述终端的处理单元的数量,cp表示所述调度方案内的各任务节点的结束处理时间的最大值。5.如权利要求3所述的调度方案生成方法,其特征在于,通过如下公式,根据所述排在首位的待分配任务节点的执行时间更新所述完成时间最小的处理单元的完成时间:cpk=cpk+ci;其中,等号左边的cpk表示更新后的完成时间最小的处理单元的完成时间,等号右边的cpk表示更新前的完成时间最小的处理单元的完成时间,ci表示所述排在首位的待分配任务节点的执行时间。6.如权利要求3所述的调度方案生成方法,其特征在于,所述根据所述初始调度方案内的各任务节点的执行时间和各所述任务节点之间的数据依赖关系,调整所述初始调度方案内的各任务节点的开始处理时间和重定时值,得到目标调度方案包括:将所述初始调度方案内的任务节点标记为未确定位置状态;根据所述初始调度方案内未确定位置状态的各任务节点的执行时间,确定一个或多个关键节点;将全部的所述关键节点加入预设的待遍历节点队列,所述待遍历节点队列的初始状态为空队列,所述待遍历节点队列中的所述关键节点按照执行时间的长短进行排列;从所述待遍历节点队列中取出位于队首的关键节点,将所述位于队首的关键节点标记为已确定位置状态;根据所述位于队首的关键节点以及所述任务节点之间的数据依赖关系,在所述调度方案的任务节点中确定所述位于队首的关键节点的一个或多个前继节点;将全部的所述前继节点按照执行时间的大小进行排序,根据所述位于队首的关键节点依次将各所述前继节点的开始处理时间和重定时值进行调整,并将调整后的前继节点标记为所述已确定位置状态,加入所述待遍历节点队列;根据所述任务...
【专利技术属性】
技术研发人员:王毅,吴尚宇,陈家贤,雷洁彦,毛睿,廖好,
申请(专利权)人:深圳大学,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。