[发明专利]一种基于任务移动的多核系统静态任务调度方法在审
申请号: | 201810818312.1 | 申请日: | 2018-07-24 |
公开(公告)号: | CN109117258A | 公开(公告)日: | 2019-01-01 |
发明(设计)人: | 宋宇鲲;罗乐;王春华;倪伟 | 申请(专利权)人: | 合肥工业大学 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京律谱知识产权代理事务所(普通合伙) 11457 | 代理人: | 罗建书 |
地址: | 230000 安*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 调度 任务调度 移动 多核系统 多核微处理器 调度效果 任务执行 移动自由 约束条件 运算效率 核系统 内核 判定 发送 分配 自由 | ||
本发明公开了一种基于任务移动的多核系统静态任务调度方法,该方法包括:步骤S10,根据接收到的多个待执行任务,生成第一调度列表;步骤S20,根据待执行任务的数量,确定任务移动范围;步骤S30,选取任一待执行任务作为自由任务点,根据任务移动范围,移动自由任务点,生成第二调度列表;步骤S40,当判定第二调度列表符合任务约束条件时,将第二调度列表记作第一调度列表;步骤S50,发送第一调度列表;步骤S60,根据第一调度列表将待执行任务分别分配至多核系统中的各个内核中执行。通过本发明中的技术方案,有利于提高任务调度列表的调度效果,减少了任务调度的调度长度和任务执行过程中的整体执行时间,提高了多核微处理器的运算效率。
技术领域
本发明涉及多核微处理器任务调度的技术领域,具体而言,涉及一种基于任务移动的多核系统静态任务调度方法。
背景技术
随着技术的发展,具有多个计算内核的微处理器即多核处理器应运而生,在多个领域得到广泛应用,并逐渐成为计算机微处理器的主流。采用多核结构可满足应用程序对多线程并发执行的要求,大幅度提高微处理器性能,但应用程序内部各个任务的调度极大地影响了微处理器的性能发挥。调度算法把单个任务作为基本执行单元,在满足任务之间的数据驱动关系的前提下,通过特定的策略为每个任务选择最为合适的处理核,目前使用较多的是静态任务调度技术,该技术在任务执行之前已经通过调度算法对任务进行了分配,具有较好的操作性,其中,列表调度算法在众多方案中复杂度最低,且性能显著,一直是多核微处理器任务调度领域的热门技术。
而现有技术中,列表调度算法通常是对任务列表中的单个任务节点进行分析计算,实现对任务节点的排序策略进行优化,但没有考虑到任务节点之间的并行性,也没有对任务调度空间进行大范围的搜索,具有一定的局限性。
发明内容
本发明的目的在于:扩大任务调度列表的搜索空间,提高了应用程序内部任务之间执行的并行性,缩短了任务执行时间,提高了多核微处理器的运算效率。
本发明的技术方案是:提供了一种基于任务移动的多核系统静态任务调度方法,该方法包括:步骤S10,根据接收到的多个待执行任务,生成第一调度列表;步骤S20,根据待执行任务的数量,确定任务移动范围;步骤S30,选取任一待执行任务作为自由任务点,根据任务移动范围,移动自由任务点,生成第二调度列表;步骤S40,当判定第二调度列表符合任务约束条件时,将第二调度列表记作第一调度列表;步骤S50,发送第一调度列表;步骤S60,根据第一调度列表将待执行任务分别分配至多核系统中的各个内核中执行。
上述任一项技术方案中,进一步地,步骤S10具体包括:步骤S11,根据接收到的多个待执行任务,生成无回路有向图,无回路有向图中包括多个任务节点,任一个任务节点对应于任一个待执行任务;步骤S12,计算无回路有向图中任一个任务节点的权重值,并生成第一调度列表。
上述任一项技术方案中,进一步地,步骤S20具体包括:步骤S21,统计无回路有向图中任一层级中任务节点的层级个数;步骤S22,将层级个数的最大值记作任务移动范围。
上述任一项技术方案中,进一步地,步骤S30具体包括:步骤S31,随机选取任一待执行任务作为自由任务点;步骤S32,随机确定自由任务点的移动方向和任务移动距离,移动方向为向左移动或向右移动,任务移动距离小于或等于任务移动范围;步骤S33,根据移动方向、任务移动距离,移动自由任务点,生成第二调度列表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥工业大学,未经合肥工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810818312.1/2.html,转载请声明来源钻瓜专利网。