[发明专利]任务调度方法及装置、存储介质有效
申请号: | 201910200097.3 | 申请日: | 2019-03-15 |
公开(公告)号: | CN111694675B | 公开(公告)日: | 2022-03-08 |
发明(设计)人: | 王迎瑞;李哲龙 | 申请(专利权)人: | 上海商汤智能科技有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06N3/04;G06N3/08 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 200233 上海市徐*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 任务 调度 方法 装置 存储 介质 | ||
本公开提供了一种任务调度方法及装置,其中,该任务调度方法包括:根据操作任务队列中多个操作任务所对应的操作数,确定所述多个操作任务之间的依赖关系;基于所述多个操作任务之间的依赖关系,对所述操作任务队列中的所述多个操作任务进行调度。本公开可以最小化操作任务之间的依赖,实现了对操作任务的高效调度。
技术领域
本公开涉及深度学习领域,尤其涉及任务调度方法及装置、存储介质。
背景技术
深度学习模型的训练是深度学习中的关键环节。训练过程是非常复杂的,使用到的硬件资源也非常多样。
目前各开源框架都有一套自己的调度方法来管理深度学习模型的训练过程,但是大多通过有向无环图描述操作任务之间的依赖关系,以使训练过程按正确流程进行,导致训练平台的任务调度效率不高。
发明内容
本公开提供了一种任务调度方法和装置以及计算机存储介质。
根据本公开实施例的第一方面,提供一种任务调度方法,所述方法包括:
根据操作任务队列中多个操作任务所对应的操作数,确定所述多个操作任务之间的依赖关系;
基于所述多个操作任务之间的依赖关系,对所述操作任务队列中的所述多个操作任务进行调度。
可选地,所述操作任务对应的操作数包括读操作数和/或写操作数。
可选地,所述根据操作任务队列中多个操作任务所对应的操作数,确定所述多个操作任务之间的依赖关系,包括:
如果第二操作任务包含对第一操作任务的写操作数进行的读操作、或所述第二操作任务包含对所述第一操作任务的操作数进行的写操作,确定所述第二操作任务依赖于所述第一操作任务;
其中,所述第一操作任务和所述第二操作任务是所述操作任务队列中的不同操作任务。
可选地,所述根据操作任务队列中多个操作任务所对应的操作数,确定所述多个操作任务之间的依赖关系,还包括:
如果所述第二操作任务包含对所述第一操作任务的读操作数进行的读操作,确定所述第一操作任务与所述第二操作任务之间不存在依赖。
可选地,所述基于所述多个操作任务之间的依赖关系,对所述操作任务队列中的所述多个操作任务进行调度,包括:
基于所述多个操作任务之间的依赖关系,确定所述多个操作任务的调度顺序;
为所述操作任务队列中的当前操作任务分配内存;
在所述分配内存完成之后,将所述当前操作任务调度到所述当前操作任务对应的上下文上执行,并按照所述调度顺序进行所述当前操作任务的下一个操作任务的内存分配。
可选地,所述基于所述多个操作任务之间的依赖关系,确定所述多个操作任务的调度顺序,包括:
如果所述多个操作任务中的第一操作任务与所述多个操作任务中的第二操作任务之间不存在依赖,则确定并行调用所述第一操作任务与所述第二操作任务;和/或
如果所述第二操作任务依赖于所述第一操作任务,则确定在所述第一操作任务之后调度所述第二操作任务。
可选地,所述根据操作任务队列中多个操作任务所对应的操作数,确定所述多个操作任务之间是否存在依赖,包括:
对所述多个操作任务中包括的M个通信操作任务进行融合处理,得到至少一个合并通信操作任务,每个合并通信操作任务包含所述M个通信操作任务中的至少一个通信操作任务,其中,M为大于或等于1的整数;
根据所述至少一个合并通信操作任务对应的操作数和所述多个操作任务中至少一个非通信操作任务对应的操作数,确定所述多个操作任务之间的依赖关系。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海商汤智能科技有限公司,未经上海商汤智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910200097.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:转子式压缩机、电器设备
- 下一篇:一种干化处理方法及系统