【技术实现步骤摘要】
任务调度方法、装置、设备及存储介质
[0001]本申请涉及计算机领域,特别涉及一种任务调度方法、装置、设备及存储介质。
技术介绍
[0002]在智能制造与高性能计算等领域中,一个重要的研究方向是,如何调度资源依次执行多项任务,以节省完成所有任务所需的时间。
[0003]相关技术中,计算机按照设定的贪心规则,一个一个地(one
‑
by
‑
one)地依次为任务分配资源,从而生成一个调度方案,然后计算机使用该调度方案进行任务调度。
[0004]采用上述方法时,由于贪心算法的短视性,导致生成的调度方案的质量不佳,造成按照调度方案进行任务调度时,完成所有任务所需耗费的时间过长。
技术实现思路
[0005]本申请实施例提供了一种任务调度方法、装置、设备及存储介质,有助于减小完成所有任务总共所需耗费的时长。所述技术方案如下。
[0006]第一方面,提供了一种任务调度方法,该方法包括:基于待调度的多个任务,获取第一调度方案;基于所述第一调度方案,获取第二调度方案,所述第二调度方案的关键路径和所述第一调度方案的关键路径不同,所述关键路径是指调度方案对应的DAG中最长路径;基于所述第二调度方案中每个任务的数据读取时长、任务执行时长以及数据写入时长,确定所述第二调度方案的质量,所述数据读取时长是指从内存中读取执行任务所依赖的数据的时长,所述数据写入时长是指将执行任务所产生的数据写入至内存的时长;若所述第二调度方案的质量满足条件,使用所述第二调度方案进行任务调度。< ...
【技术保护点】
【技术特征摘要】
1.一种任务调度方法,其特征在于,所述方法包括:基于待调度的多个任务,获取第一调度方案;基于所述第一调度方案,获取第二调度方案,所述第二调度方案的关键路径和所述第一调度方案的关键路径不同,所述关键路径是指调度方案对应的有向无环图DAG中最长路径;基于所述第二调度方案中每个任务的数据读取时长、任务执行时长以及数据写入时长,确定所述第二调度方案的质量,所述数据读取时长是指从内存中读取执行任务所依赖的数据的时长,所述数据写入时长是指将执行任务所产生的数据写入至内存的时长;若所述第二调度方案的质量满足条件,使用所述第二调度方案进行任务调度。2.根据权利要求1所述的方法,其特征在于,所述基于所述第一调度方案,获取第二调度方案,包括:调整所述第一调度方案中位于关键块的任务在所述关键块中的位置,得到所述第二调度方案,所述关键块是指计算设备的同一个核上连续的多个关键任务,所述关键任务是指位于关键路径的任务;或者,将所述第一调度方案中关键任务从计算设备的第一核调整至计算设备的第二核,得到所述第二调度方案。3.根据权利要求2所述的方法,其特征在于,所述调整所述第一调度方案中位于关键块的任务在所述关键块中的位置,包括下述至少一项:将所述关键块的块首任务调整为所述关键块的内部任务,所述内部任务是指关键块中除了块首任务以及块尾任务之外的其他任务;将所述关键块的块尾任务调整至所述关键块的内部任务;将所述关键块的内部任务调整至所述关键块的块首任务之前;将所述关键块的内部任务调整至所述关键块的块尾任务之后。4.根据权利要求2所述的方法,其特征在于,所述将所述第一调度方案中关键任务从第一核调整至第二核,包括:将所述第一调度方案中关键任务从第一核调整至第二核的不同任务之间。5.根据权利要求2至4中任一项所述的方法,其特征在于,所述将所述第一调度方案中关键任务从第一核调整至第二核之前,所述方法还包括:根据所述关键任务的类型以及候选的多个核中每个核的类型,从所述候选的多个核中确定所述第二核,所述第二核的类型和所述关键任务的类型和满足匹配条件。6.根据权利要求1至5中任一项所述的方法,其特征在于,所述基于所述第二调度方案中每个任务的数据读取时长、任务执行时长以及数据写入时长,确定所述第二调度方案的质量,包括:基于所述第二调度方案中每个任务的数据读取时长、任务执行时长、数据写入时长以及任务对应的CU,确定所述第二调度方案的质量,所述CU是指计算设备的处理器的核中用于数据读取或数据写入的单元。7.根据权利要求1至6中任一项所述的方法,其特征在于,所述基于所述第一调度方案,获取第二调度方案,包括:基于所述第一调度方案,获取多个候选调度方案,每个所述候选调度方案的关键路径
和所述第一调度方案的关键路径不同;基于每个所述候选调度方案中每个任务的任务执行时长,确定每个所述候选调度方案的质量;基于每个所述候选调度方案的质量,从所述多个候选调度方案中确定所述第二调度方案。8.根据权利要求7所述的方法,其特征在于,所述基于每个所述候选调度方案的质量,从所述多个候选调度方案中确定所述第二调度方案,包括:按照质量从高到低的顺序,对所述多个候选调度方案进行排序;从所述多个候选调度方案中,选择排在前设定位数的候选调度方案,得到所述第二调度方案。9.根据权利要求1所述的方法,其特征在于,所述方法还包括:基于所述第二调度方案的关键路径,确定第一数据的重要度,所述第一数据的重要度是指关键任务依赖所述第一数据的次数或者关键任务产生所述第一数据的次数,关键任务是指位于关键路径的任务;若所述第一数据的重要度满足条件,为所述第一数据分配访问速度满足条件的内存。10.根据权利要求1所述的方法,其特征在于,所述基于待调度的多个任务,获取第一调度方案,包括:基于所述多个任务的...
【专利技术属性】
技术研发人员:吕志鹏,苏宙行,宋良才,李思源,武琛,赫荣华,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。