[发明专利]一种基于任务移动的多核系统静态任务调度方法在审
申请号: | 201810818312.1 | 申请日: | 2018-07-24 |
公开(公告)号: | CN109117258A | 公开(公告)日: | 2019-01-01 |
发明(设计)人: | 宋宇鲲;罗乐;王春华;倪伟 | 申请(专利权)人: | 合肥工业大学 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京律谱知识产权代理事务所(普通合伙) 11457 | 代理人: | 罗建书 |
地址: | 230000 安*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 调度 任务调度 移动 多核系统 多核微处理器 调度效果 任务执行 移动自由 约束条件 运算效率 核系统 内核 判定 发送 分配 自由 | ||
1.一种基于任务移动的多核系统静态任务调度方法,其特征在于,该方法包括:
步骤S10,根据接收到的多个待执行任务,生成第一调度列表;
步骤S20,根据所述待执行任务的数量,确定任务移动范围;
步骤S30,选取任一所述待执行任务作为自由任务点,根据所述任务移动范围,移动所述自由任务点,生成第二调度列表;
步骤S40,当判定所述第二调度列表符合任务约束条件时,将所述第二调度列表记作所述第一调度列表;
步骤S50,发送所述第一调度列表;
步骤S60,根据所述第一调度列表将所述待执行任务分别分配至多核系统中的各个内核中执行。
2.如权利要求1所述的基于任务移动的多核系统静态任务调度方法,其特征在于,所述步骤S10具体包括:
步骤S11,根据接收到的多个所述待执行任务,生成无回路有向图,所述无回路有向图中包括多个任务节点,任一个所述任务节点对应于任一个所述待执行任务;
步骤S12,计算所述无回路有向图中任一个所述任务节点的权重值,并生成所述第一调度列表。
3.如权利要求2所述的基于任务移动的多核系统静态任务调度方法,其特征在于,所述步骤S20具体包括:
步骤S21,统计所述无回路有向图中任一层级中所述任务节点的层级个数;
步骤S22,将所述层级个数的最大值记作所述任务移动范围。
4.如权利要求1所述的基于任务移动的多核系统静态任务调度方法,其特征在于,所述步骤S30具体包括:
步骤S31,随机选取任一所述待执行任务作为所述自由任务点;
步骤S32,随机确定所述自由任务点的移动方向和任务移动距离,所述移动方向为向左移动或向右移动,所述任务移动距离小于或等于所述任务移动范围;
步骤S33,根据所述移动方向、所述任务移动距离,移动所述自由任务点,生成所述第二调度列表。
5.如权利要求1所述的基于任务移动的多核系统静态任务调度方法,其特征在于,所述步骤S40具体包括:
步骤S41,判断所述自由任务点移动后是否位于所述第一调度列表之外,
当判定所述自由任务点位于所述第一调度列表之外时,执行所述步骤S30,否则,执行步骤S42;
步骤S42,判断所述自由任务点对应的所述待执行任务在移动后是否位于该待执行任务对应的前置任务之前,
当判定所述第一任务位于所述前置任务之前时,执行所述步骤S30,否则,执行步骤S43;
步骤S43,计算所述第一调度列表的第一任务调度长度和所述第二调度列表的第二任务调度长度;
步骤S44,判断所述第二任务调度长度是否大于或等于所述第一任务调度长度,
当判定所述第二任务调度长度大于或等于所述第一任务调度长度时,执行所述步骤S30,否则,将所述第二调度列表记作所述第一调度列表。
6.如权利要求1所述的基于任务移动的多核系统静态任务调度方法,其特征在于,所述步骤S50之前还包括:
步骤S51,统计所述第二调度列表的生成次数;
步骤S52,判断所述第二调度列表的所述生成次数是否小于所述待执行任务的所述数量与预设倍数的乘积;
当判定所述生成次数小于所述乘积时,执行所述步骤S30,否则,执行所述步骤S50。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥工业大学,未经合肥工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810818312.1/1.html,转载请声明来源钻瓜专利网。