[发明专利]一种基于DAG的启发式任务调度方法在审
| 申请号: | 202211424686.8 | 申请日: | 2022-11-14 |
| 公开(公告)号: | CN115686795A | 公开(公告)日: | 2023-02-03 |
| 发明(设计)人: | 孙振宇;孟亚坤;孙景昊;王继伟;章宇;王英霖;郑浩然;毕冉 | 申请(专利权)人: | 大连理工大学 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
| 代理公司: | 大连理工大学专利中心 21200 | 代理人: | 温福雪 |
| 地址: | 116024 辽*** | 国省代码: | 辽宁;21 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 dag 启发式 任务 调度 方法 | ||
本发明属于实时嵌入式系统技术领域,具体涉及一种基于DAG的启发式任务调度方法。本发明将DAG的节点划分为几个子集,然后对每个节点子集进行调度,并将所有节点子集的调度合并为针对整个DAG上所有任务节点的调度。该方法可以在具有DAG结构的嵌入式系统设计的编译阶段对系统完成静态调度。通过使用本发明提出的DAG上任务的调度方法,相对于经典的Graham列表调度算法有效降低了系统的平均响应时间,可以使计算资源有限的嵌入式系统提高单位时间内完成的任务数量并且用尽可能少的运行内核数量完成任务,从而避免资源浪费。
技术领域
本发明属于实时嵌入式系统技术领域,具体涉及一种基于DAG的启发式任务调度方法。
背景技术
实时和嵌入式系统正在从单核平台向多核平台转变,软件必须在多核平台上并行化,才能充分利用多核硬件的计算能力。多核(multicore)是指在一枚处理器(processor)中集成两个或多个完整的计算引擎(内核)。多核系统更易于扩展,并且能够在更纤巧外形的硬件中融入更强大处理性能的计算单元,这种系统所用的功耗更低、计算功耗产生的热量更少。
目前大多数实时并行任务都可以建模为有向无环图(Directed Acyclic Graph,DAG)。有向无环图是实时系统领域中表达性非常强的模型,是一种常见的对并行程序建模的模型。在多核处理器上调度DAG任务是高性能计算的关键问题,而在实时场景中,一个好的调度器不仅应该在实践中达到具有竞争力的性能,而且需要在理论上具有可预测性。任务调度是指系统为了自动完成特定任务,在约定的特定时刻去执行任务的过程。有了任务调度即可解放更多的人力,由系统自动去执行任务。任务调度系统负责指定各个任务何时运行,何时结束以及正确的处理任务之间的依赖关系。
DAG的响应时间是指在多核平台上应用的调度算法下执行G中的所有节点所花费的时间。在实时嵌入式系统领域,一个具有挑战性的问题是如何有效地限制最坏情况响应时间(Worst Case Response Time,WCRT)。
经典的Graham列表调度算法为系统提供了一个安全的响应时间分析的上界,但它的分析结果明显高于实际系统的结果,在计算资源非常有限的嵌入式系统中,这样的误差可能会造成巨大的资源浪费。
发明内容
实时嵌入式系统正在从单核平台向多核平台转变,软件必须在多核平台上并行化,为了能够充分利用多核硬件平台的计算能力,本发明提出了一种具有改进的响应时间界限的用于DAG上任务调度的启发式调度方法。
本发明的技术方案:
一种基于DAG的启发式任务调度方法,步骤如下:
步骤一:确定系统的DAG模型
将实时系统或嵌入式系统上的实时任务建模为DAG G=(V,E),其中V是节点的集合,E是边的集合;V中的每个节点vi表示一段连续的执行代码,并且具有执行时间ei;每条边(vi,vj)∈E表示节点vi和vj之间的优先关系,vi是vj的前驱节点,vj是vi的后继节点;如果vi是vj的前驱节点的前驱节点,则称节点vi是vj的祖先节点,称vj是vi的后裔节点;。
步骤二:将DAG中的节点划分为若干个节点子集
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连理工大学,未经大连理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211424686.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:发光元件
- 下一篇:一种单晶导向叶片及其精密铸造方法





