一种异构多核片上系统任务调度方法和装置制造方法及图纸

技术编号:22054601 阅读:116 留言:0更新日期:2019-09-07 15:02
本发明专利技术公开了一种异构多核片上系统任务调度方法,包括:选择总执行时间最少的处理器,选择在该处理器上执行时间最少的未分配任务,将该任务分配给该处理器获得第一任务分配方案和各处理器的最高工作频率;利用凸优化算法获得各处理器理论最小工作频率和第二任务分配方案,在所述各处理器的最小工作频率和最大工作频率之间选择各处理器的最终工作频率;通过遍历的方式获得最终的任务分配方案。本发明专利技术还公开了一种异构多核片上系统任务调度装置,本发明专利技术的技术方案在保证系统产生接近最小能耗的前提下减少运用凸优化算法进行迭代的次数,大大降低算法复杂度,降低算法的执行时间。

A Task Scheduling Method and Device for Heterogeneous Multi-core System on Chip

【技术实现步骤摘要】
一种异构多核片上系统任务调度方法和装置
本专利技术属于计算机体系结构领域,具体涉及到一种异构多核片上系统任务调度方法和装置。
技术介绍
随着片上系统(简称,SoC)运算性能的不断提升,其能耗也在迅速增长。“动态电压频率调制技术”(简称,DVFS)能有效节约片上系统的整体能耗,在工业界被广泛使用。在嵌入式实时系统中,异构多核的SoC广泛运用DVFS调度技术进行任务分配。现有技术中,异构多核的SoC任务分配方法主要分为两类方案:第一类为基于全局规划的启发式算法。启发式算法首先根据任务在各个处理器上的平均执行时间进行任务排列,然后将任务分配到相应的处理器。这类算法拥有较低的复杂度,分配时间较短。但是这类算法没有考虑到处理器的异构特性,节能效果不够理想。第二类为基于分区调度的优化算法。这类算法同样先对任务集的执行时间进行排序,运用优化理论求解分配方案,然后确定第一个任务的分配方案,接着更新优化问题再次求解优化问题,确定第二个任务的分配方案,不断的进行迭代得出最后全部任务的分配方案。这种任务分配方法可以得出接近理论值的系统能耗,但是其算法迭代次数多,每次运用优化理论复杂度较大,算法执行时间较长本文档来自技高网...

【技术保护点】
1.一种异构多核片上系统任务调度方法,其特征在于,包括:设置各处理器工作频率=该处理器的最高频率;选择总执行时间最少的处理器,选择在该处理器上执行时间最少的未分配任务,将该任务分配给该处理器;获得第一任务分配方案;对每一个处理器,选择使得该处理器总执行时间不大于任务完成截止时间D的最小工作频率作为该处理器的最大工作频率fj

【技术特征摘要】
1.一种异构多核片上系统任务调度方法,其特征在于,包括:设置各处理器工作频率=该处理器的最高频率;选择总执行时间最少的处理器,选择在该处理器上执行时间最少的未分配任务,将该任务分配给该处理器;获得第一任务分配方案;对每一个处理器,选择使得该处理器总执行时间不大于任务完成截止时间D的最小工作频率作为该处理器的最大工作频率fjmax;计算使得系统总能耗Etotal最小的各任务在各处理器上的分配期望值ai*j:如果ai*j大于预设的门限值,将任务i分配给处理器j;获得第二任务分配方案;根据所述第二任务分配方案计算各处理器的最小工作频率fjmin;设置各处理器工作频率为fjmin,遍历获得将第二任务分配方案中未分配任务分配给各处理器的所有第三任务分配方案;在所述fjmin和fjmax之间选择各处理器的最终工作频率fjfinal;所述fjfinal为满足存在至少一个各处理器总执行时间都不大于D的第三任务分配方案的各处理器最小工作频率;在所述各处理器总执行时间都不大于D的第三任务分配方案中,选择总能耗最小的一个第三任务分配方案作为最终任务分配方案;设置各处理器的工作频率为该处理器的fjfinal;根据所述最终任务分配方案分配各任务给各处理器;其中,所述i为任务编号,i=1,2,……,I,I为任务总数量;所述j为处理器编号,j=1,2,……,J,J为处理器总数量;所述处理器的总执行时间为分配给该处理器的各任务在该处理器上的执行时间之和。2.根据权利要求1所述的方法,其特征在于,所述各任务在该处理器上的执行时间为:其中,fjwork为处理器j当前选择的工作频率,所述Ci为任务i的最坏执行周期;所述θij为任务i在处理器j上的执行效率。3.根据权利要求2所述的方法,其特征在于,所述选择使得该处理器总执行时间不大于任务完成截止时间D的最小工作频率作为该处理器的最大工作频率fjmax包括:步骤1.1、将各处理器的工作频率降低一级;步骤1.2、计算各处理器的总执行时间;步骤1.3、如果有处理器的总执行时间大于D,将当前各处理器工作频率的上一级工作频率作为fjmax;如果各处理器的总执行时间都不大于D,返回步骤一执行。4.根据权利要求2所述的方法,其特征在于,所述遍历获得将第二任务分配方案中未分配任务分配给各处理器的所有第三任务分配方案:将各未分配任务依次分配给各处理器,获得JK个第三任务分配方案;其中,K为第二任务分配方案中未分配任务的数量。5.根据权利要求4所述的方法,其特征在于,所述在所述fjmin和fjmax之间选择各处理器的最终工作频率fjfinal包括:步骤2.1、设置各处理器当前的工作频率fjwork=fjmin;步骤2.2、计算各第三任务分配方案中各处理器的总执行时间;步骤2.3、如果所有第三任务分配方案都有处理器总执行时间大于D;将各处理器的fjwork提高一级,执行步骤2.2;如果有各处理器的总执行时间都不大于D的第三任务分配方案,设置fjfinal=fjwork。6.一种异构多核片上系统任务调度装置,其特征在于,包括:最大工作频率选择模块,用于选择各处理器的最大工作频率,设置各处理器的最高频率作为各处理器的工作频率,选择总执行时间最少的处理器,选择在该处理器上执行时间最少的未分配任务,将该任务分配给该处理器;获得第一任务分配方案;对每一个处理器,选择使得该处理器总执行时间不大于D的最小工作频率作为该处理器的最大工作频率fjmax;最小工作频率选择模块,用于选择各处理器的最小工作频率,计算使得系统总能耗Etotal最小的各任务在各处理器上的分配期望值ai*j:如果ai*j大于预设的门限值Δ,将任务i分配给处理器j;根据所述第二任务分配方案计算各处理器的最小工作频率fjmin;任务分配模块,用于在所述各处理器的最小工作频率和最大工作频率之间选择各处理器的最终工作频率;获得最终的任务分...

【专利技术属性】
技术研发人员:夏军袁帅杨逸
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:重庆,50

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1