CN105242966A - 一种面向自主获能异构系统的非精确实时任务调度方法 - Google Patents
一种面向自主获能异构系统的非精确实时任务调度方法 Download PDFInfo
- Publication number
- CN105242966A CN105242966A CN201510626523.1A CN201510626523A CN105242966A CN 105242966 A CN105242966 A CN 105242966A CN 201510626523 A CN201510626523 A CN 201510626523A CN 105242966 A CN105242966 A CN 105242966A
- Authority
- CN
- China
- Prior art keywords
- task
- energy
- length
- processor
- tasks
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Supply And Distribution Of Alternating Current (AREA)
Abstract
本发明公开了一种面向自主获能异构系统的非精确实时任务调度方法,包括以下步骤:计算处理器的能耗贡献因子,将处理器按能耗贡献因子由低到高排序;取任务分配长度为强制部分,调度任务分配算法,计算所需能量Elow;取任务分配长度为其完整部分,调度任务分配任务,计算所需能量Ehigh;估计系统在周期D内可用的能量Esup;确定最终的任务分配长度;调度任务分配算法,将任务分配到处理器上;计算任务-处理器能耗因子EC,将任务按照EC进行升序排列;计算所有任务可选部分可以使用的剩余能量Eoptl;迭代地计算任务可选部分的执行长度;计算每个处理器上所分配的能量;实时调度任务。使用本发明能够使得在相同的条件下获得较高的服务质量。
Description
技术领域
本发明涉及异构多处理器非精确实时任务的分配和调度技术,尤其涉及一种基于能量采集系统中能量不确定性环境下的任务分配和调度技术。
背景技术
实时系统是指能够在系统规定的时间内完成指定的任务,并就完成的情况做出响应的系统。实时系统具有很强的时间约束性,根据时间约束的强弱,实时系统又可以分为软实时系统和硬实时系统。软实时系统是指系统的时间限制具有一定的弹性,它可以容忍偶尔的超时任务;硬实时系统是指系统必须在规定的时间内完成规定的任务,它不允许出现任何的超时,一旦超时可能会带来严重的后果。实时系统正是因为其高度的可靠性,最近这些年,嵌入式实时系统被越来越广泛的应用于军事、航天航空、信息采集以及环境勘测等领域。
对于嵌入式实时系统的能量管理方面的研究一直是国内外学者的研究焦点,比较著名的能量管理技术有动态电压频率调节技术(DVFS)以及动态电源管理技术(DPM)。虽然使用DPM和DVS技术进行能量管理能够在降低系统能耗方面取得不错的效果,但是这种方法对于系统的硬件要求较高,不支持可变频和动态功率选择的处理器该技术是无法被应用的。
在能量受限的嵌入式实时系统中,任务可能由于能量不足而无法按时完成。虽然通过降低任务执行频率可以减少系统能耗,但这亦不可避免地增加了任务的执行长度,从而推迟了后续任务的执行,甚至于导致后续任务无法按时完成。在实时系统中,当任务无法按时完成时,称系统违背实时约束。为了尽可能避免因系统过载或者资源不足而违背实时约束,提高系统的可靠性和健壮性,JaneW.SLiu等在1987年提出一种非精确计算技术。当系统资源受限或者不确定时,可以利用非精确技术进行自适应的任务调度,以权衡系统的服务质量与系统资源。现如今,嵌入式系统往往需要被应用在一些自然环境极其恶劣的地方,对于这些地方设备的电池更换基本无法由人力完成,所以,自主获能系统应运而生,并且研究者们针对自主获能实时系统的任务调度机制进行了深入而广泛地研究。但是,目前的研究所针对的大部分都是同构的处理器和任务,对于异构处理器和任务方面的研究还很少。异构处理器是指同一个任务在不同的处理器上执行相同的长度最终所消耗能量是不一样的。同样,异构任务是指不同的任务在同一个处理器上执行相同的时钟周期最终所消耗的能量也是不一样的。
发明内容
本发明是在自主获能环境下,结合任务和处理器的异构特性,通过对非精确实时任务的分配以及调度来最大化系统的服务质量。本发明在分配任务的时候考虑了系统可用能量的不确定性,并且结合任务和处理器的异构特性来决定任务的调度。
本发明的一种面向自主获能异构系统的非精确实时任务调度方法,包括以下步骤:
步骤一:获取所有待分配的任务和所有待分配任务的处理器,并且计算所有处理器的能耗贡献因子,并将所有的处理器按照功耗贡献因子从低到高进行排序;
步骤二:取所有任务的分配长度为其强制部分,调度任务分配算法,并计算执行强制部分所需要的能量Elow;
步骤三:取所有任务的分配长度为其完整的长度,调度任务分配算法,并计算任务执行完整长度所需要的能量Ehigh;其中,所述完整的长度为完整的强制部分和可选部分;
步骤四:估计系统在任务集的调度周期[t,t+D]内可以使用的能量Esup;
步骤五:判断系统预测到的可用的能量Esup与Elow以及Ehigh之间的关系,并确定最终的任务分配长度;
步骤六:调度任务分配算法,将任务分配到处理器上;
步骤七:计算所有处理器上任务-处理器能耗因子EC,并将任务按照“任务-处理器能耗因子”进行升序排列;
步骤八:计算所有任务执行其强制部分所需要的能量,然后计算出所有任务的可选部分可以使用的剩余能量Eoptl;
步骤九:在系统可选部分可用能量下迭代地计算任务可选部分的执行长度,并返回新的任务集,其中每个任务可选部分的执行长度已经确定;
步骤十:计算每个处理器上所应该分配到的能量占整个系统可用能量的比例hr;
步骤十一:对于每个处理器,结合系统采集到的能量来实时调度任务。
所述任务分配算法具体包括:
步骤A1:根据任务的分配长度计算所有任务的能耗贡献因子,并将任务按能耗耗贡献因子由高到低排序,并选取第一个处理器开始分配任务;
步骤A2:依次将任务分配到处理器上,在分配每个任务的时候,检查是否满足任务的时间约束以及当前处理器的容量限制;如果不满足条件,则选取下一个处理器,直到所有的任务全部分配完或者所有的处理器全部用完;如果所有处理器已全部选取完,但仍然有任务未完成分配,则分配失败;
步骤A3:返回并保存每个处理器上所分配的任务集。
所述步骤四中的估计系统在任务集的调度周期[t,t+D]内可以使用的能量Esup是使用指数平滑预测法,通过计算指数平滑值,并配合一定的时间序列模型对未来一段时期的序列进行预测;其原理是任一期的指数平滑值都是本期实际观察值与前一期指数平滑值的加权平均;指数平滑法基于如下公式:
其中,指代第i期的指数平滑值;而xi是第i期的观察值;ω(0≤ω≤1)是平滑常数,它使得指数平滑具有随时间递减的性质;则是第i-1期的指数平滑值。
所述步骤五中的确定最终的任务分配长度具体包括:
步骤B1:判断Esup是否小于或等于Elow,如果是,则令所有任务的分配长度都为其强制部分;否则,执行步骤B2;
步骤B2:判读Esup是否大于或等于Ehigh,如果是,则令所有任务的分配长度为其完整的长度;否则,执行步骤B3;
步骤B3:令任务的分配长度为其强制部分和完整部分长度的中值;
步骤B4:调度任务分配算法,计算任务执行分配长度所需要的能量Edem;
步骤B5:判断|Esup-Edem|<%,如果满足,则得到任务的分配长度;否则,执行步骤B6;其中,ε为一个很小的正数,取值0-0.1;
步骤B6:判断是否Esup大于Edem,如果是,则令任务的分配长度为其右区间的中值;否则,令任务的分配长度为其左区间的中值,并返回步骤B4。
所述步骤九中的计算任务可选部分的执行长度具体包括:
步骤C1:判读是否所有任务可选部分的执行长度已确定,如果是,步骤九结束;否则,执行步骤C2;
步骤C2:判断是否Eoptl大于0,如果是,执行步骤C3;否则,令接下来还未确定可选部分长度的所有任务可选部分的执行长度为0,步骤九结束;
步骤C3:判断是否Eoptl满足当前任务可选部分的完整执行,如果是,则令当前任务的可选部分执行长度为其可选部分完整长度;否则,执行步骤C4;
步骤C4:当前任务可选部分的执行长度为Eoptl除以当前任务-处理器能耗因子EC;
步骤C5:更新系统中剩余任务可选部分能够使用的能量Eoptl,并选取下一个任务,返回步骤C1。
所述步骤十一中实时调度任务具体包括:
步骤D1:基于比例系数hr,将系统中的能量分配给每个处理器;
步骤D2:判断处理器θr上的任务是否都已经执行完,如果是,则步骤十一结束;否则,执行步骤D3;
步骤D3:判断处理器θr中可用的能量是否能够支持当前任务完成其强制部分和由步骤九求出的任务可选部分的执行长度的执行,如果可以,则执行该任务的强制部分和其求出的任务可选部分的执行长度;否则,执行步骤D4;
步骤D4:判断处理器θr中可用的能量是否能够支持当前任务完成其强制部分,如果可以,则执行该任务的强制部分,否则,丢弃该任务;
步骤D5:更新处理器θr中可用的能量,并选取下一个任务;返回步骤D2。
本发明通过这种任务分配算法可以使得在给定有限的能量下最大化系统所有任务的执行时钟周期,从而来最大化系统的服务质量。在任务分配完成以后,每个任务都被绑定到具体的处理器上,然后分析任务和处理器的特性,提出任务调度算法,使得对于同样的能量,本发明中提出的调度策略最终能获得最大的服务质量。本发明对于那些能量有限且不确定性的系统具有很高的应用价值。
附图说明
图1为本发明流程图。
具体实施方式
结合以下具体实施例和附图,对本发明作进一步的详细说明。实施本发明的过程、条件以及实验方法等,除以下专门提及的内容以外,均为本领域的普遍知识和公知常识,本发明并没有特别限制的内容。
本发明所述的非精确实时任务由两部分组成:任务的强制部分Mi和任务的可选部分Oi。任务的强制部分必须在截止时间之前完成,否则将完成不了任务本身的功能;任务的可选部分是用来提高任务执行结果的精确度的,执行的越多任务最终的执行结果精度越高。非精确实时任务一般可以表示为一个六元组,如τi=(μi,Mi,Oi,oi,li,D).其中μi是任务的活动因子,Mi是任务的强制部分,Oi是任务的可选部分,oi(0≤oi≤Oi)是任务可选部分实际执行的时钟周期数,li是任务最终的实际执行时钟周期,由任务的强制部分和任务可选部分实际执行的时钟周期数组成,D是任务的截止时间,在本发明中,所有的任务共享一个截止时间。所有的任务在系统运行的一开始就全部就绪。
本发明所使用的处理器模型为异构多处理器模型,在该模型下,每个处理器只支持一个工作频率,不同的处理器的工作频率可以相同也可以不同。假设系统有M个处理器,则系统的处理器模型可以表示为Θ={θ1,θ2,…,θM},其中,θr(r=1,2,…,M)仅支持一个固定的电压和工作频率,可以表示为θr=(vr,fr),其中,vr是处理器的工作电压,fr是处理器对于的工作频率。
本发明中所使用的能量模型为可自主获能能量模型。令Pharv(t)表示系统的采集功率,则表示系统在时间间隔[t1,t2]内所采集到的能量。系统所采集的能量一部分被处理器消耗,剩下的存在电池中,所以整个系统可以使用的能量由两部分组成:采集到的能量以及电池中剩余的能量。令Esup(t1,t2)表示系统在时间间隔[t1,t2]内可以使用的能量,则Esup(t1,t2)=Eharv(t1,t2)+E(t1),其中E(t1)表示系统在t1时刻电池中所剩余的能量。处理器的功耗由两部分构成,一部分是系统的静态功耗Psta,一部分是系统的动态功耗Pdyn∝v2f,其中,v是处理器的供电电压,f是处理器的操作频率。所以系统的总功耗可以表示为:Pcons=Psta+Pdyn.
本发明中所涉及的任务是异构的,所以任务τi在处理器θr上运行时,产生的能耗还与每个任务自身有关,可表示为:
所以整个系统的能耗为:
本发明的目的是设计一个任务调度方法,在系统能量的限制下最大化系统的服务质量。
本发明的目标函数可以表示为:
s.t:Edem≤Esup
为了完成这一目标,本发明通过以下步骤来解决:
步骤一:获取所有待分配的任务和所有待分配任务的处理器,并且计算所有处理器的能耗贡献因子。其中进一步包括将处理器按照功耗贡献因子由低到高进行排序。
处理器的能耗耗贡献因子ppr可由来计算。其中,ppr表示处理器的能耗贡献因子,是处理器的有效开关电容,vr是处理器的电压。
本发明实施过程中,使用4个处理器,20个任务来演示过程。
处理器和任务参数由表1和表2给出:
表1:处理器参数
表2:任务参数
由计算处理器的能耗贡献因子,结果如下表3:
表3处理器的属性就能耗贡献因子值
步骤二:取所有任务的分配长度为其强制部分,调度任务分配算法,并计算执行强制部分所需要的能量Elow;
在进行这一步过程中,任务的分配长度定为任务的强制部分M,然后计算任务的能耗贡献因子。任务的能耗贡献因子tpi可由ui·ci来计算,其中,tpi表示任务的功耗贡献因子,ui表示任务的活动因子,ci表示任务在周期内的执行时间,对于非精确任务,在分配任务的时候ci是不知道的,本发明中根据系统的能量特点来动态的计算ci,并据此来最终完成任务分配。在这一步中,ci的值取Mi.
经过计算,表4给出任务的分配长度为强制部分时任务的能耗贡献因子值。
表4任务的能耗贡献因子值以及任务的参数表
将任务按照能耗贡献因子由高到低进行排序,结果见下表5
表5排序后的任务集
接下来选取排序后的任务集中的第一个任务开始分配。在分配任务的时候,尽量将能耗贡献因子大的任务分配到能耗贡献因子下的处理器上。每次分配一个任务的时候,首先检查任务的时间约束以及处理器的容量约束是否能够满足,如果满足就将任务分配到该处理器上,否则选取下一个处理器。直到所有的任务已经全部分配完成,或者处理器全部选择完,如果处理器全部选择完以后仍然有任务未分配到处理器上,则分配失败。
经过任务分配以后,得到每个处理器上对应的任务集Γ1,Γ2,…,ΓM,结果见下表6
表6按照强制部分分配后每个处理器上对应的任务集(D=0.05)
任务分配完成以后计算任务执行分配长度M部分的能耗Elow为:551.40798MJ
步骤三:取所有任务的分配长度为其完整的长度(包括完整的强制部分和可选部分),调度任务分配算法,并计算任务执行完整长度所需要的能量Ehigh;详细的计算过程和上面一样,经过计算,求出Ehigh为:1088.6472MJ
表7按照完整长度分配的任务分配方案
步骤四:估计系统在任务集的调度周期[0,D]内可以使用的能量Esup为790.394648MJ,D取0.05s.
步骤五:判断系统预测到的可用能量Esup与Elow以及Ehigh之间的关系,并确定最终的任务分配长度。经过判断Esup处于Elow与Ehigh之间,所以令分配长度为再次调度分配算法并求出所需要的能量Edem;重复此步骤,直到|Esup-Edem|<ε,再次,ε的值取一个很小的正数,具体的值可以适当调整,例如可以随机地在[0,0.1]之间取一个值。经过步骤五,求得最终的分配长度为任务的强制部分加上0.65倍任务的可选部分。
步骤六:调度任务分配算法,得到最终的分配结果,此时每个处理器上的任务未最终的任务集,结果见下表7
表7最终的任务分配方案
步骤七:计算所有处理器上“任务-处理器”能耗因子EC,并将任务按照“任务-处理器”能耗因子EC进行升序排列。任务分配到具体的处理器上以后,每个任务执行多少时钟周期时所消耗的能量也就确定了。但是同样多的能量,对于不同的处理器不同的任务,最终所能完成的时钟周期也是不一样的,本发明调度算法的目的就是根据任务以及处理器的这种特性,来确定哪些任务先做,以此来最终最大化系统的服务质量,也就是最终所能完成的时钟周期最大。
“任务-处理器”能耗因子EC可由公式计算得到,假设系统中最终所任务可选部分的可用能量为Eoptl,则,
其中,oi,j表是在第i个处理器上第j个任务的实际可选部分的执行长度。对于给定的能量Eoptl(会在后面有具体的计算方法),EC1,1越小的任务先执行,最终可以获得的越大。
下表8给出所有任务按照EC由低到高排序后的结果:
表8按EC排序后的任务集(从小到大排序)
步骤八:计算所有任务执行其强制部分所需要的能量Emand,然后利用Esup-Emand计算出所有任务的可选部分可以使用的剩余能量Eoptl;
因为非精确实时任务的强制部分必须在截止时间之前完成,如果完成不了就意味着执行失败,而可选部分是用来提高执行结果精确度的,可以部分完成,完成的越多,系统的服务质量也就越高。所以在系统能量一定的前提下,首要的任务是保证所有任务的强制部分执行所需要的能量,剩下的能量才用来执行任务的可选部分。
因为此时所有的任务已经全部绑定到对应的处理器上了,所有任务的强制部分执行所需要的能量也就是确定的,本发明中记为Emand,其计算公式为:
因此,系统中任务可选部分可以使用的能量为:
Eoptl=Esup-Emand
经过计算得出Emand=582.78006MJ,所以Eoptl=207.61459MJ
步骤九:在可用能量Eoptl下迭代地计算任务可选部分的执行长度,并返回新的任务集,其中每个任务可选部分的执行长度已经确定。其中,选取按EC从低到高排好序的整个任务集中第一个任务作为开始任务,然后进行一下步骤:
步骤C1:判读是否所有任务可选部分的执行长度已确定,如果是,返回;否则,执行步骤C2;
步骤C2:判断是否Eoptl大于0,如果是,执行步骤C3;否则,令接下来还未确定可选部分长度的所有任务可选部分的执行长度为0;
步骤C3:判断是否Eoptl满足当前任务可选部分的完整执行,如果是,则令当且任务的可选部分执行长度为其可选部分完整长度;否则,执行步骤C4;
步骤C4:当且任务可选部分的执行长度为Eoptl除以当且任务-处理器能耗因子EC;
步骤C5:更新系统中剩余任务可选部分可以使用的能量Eoptl,并选取下一个任务,返回步骤C1;
最后得到的新任务集为任务可选部分的执行长度已确定的任务集,结果见下表9:
表9确定可选部分执行长度的新任务集:
步骤十:计算每个处理器上所应该分配到的能量占整个系统可用能量的比例
经过计算各处理器的能量比例见下表10
表10处理器占整个系统的能量比
步骤十一:对于每个处理器θr,结合系统采集到的能量来实时地调度任务。
在此过程中,首先将电池中的能量按照比例系数hr分配给每个处理器,然后在调度任务的过程中,对于采集到的能量也按照比例hr分配给每个处理器,这样每个处理器在调度当前任务时可以使用的能量由两部分组成:分配到的电池能量,以及分配到的采集能量。然后处理器按照分到的能量来调度任务,在调度任务的时候首先检查分配到的能量是否可以满足当前任务的强制部分以及步骤九中确定的任务可选部分的执行长度的执行,如果满足,则任务就按此长度执行,并且更新系统的服务质量;如果不满足,则检查当前能量是否满足任务强制部分的执行,满足则执行,不满足,则丢弃任务。
最终系统的服务质量为:
通过本发明,可以在能量有限的情况下,通过任务分配和调度来最大化系统的服务量。
Claims (6)
1.一种面向自主获能异构系统的非精确实时任务调度方法,其特征在于,该方法包括以下步骤:
步骤一:获取所有待分配的任务和所有待分配任务的处理器,并且计算所有处理器的能耗贡献因子,并将所有的处理器按照功耗贡献因子从低到高进行排序;
步骤二:取所有任务的分配长度为其强制部分,调度任务分配算法,并计算执行强制部分所需要的能量Elow;
步骤三:取所有任务的分配长度为其完整的长度,调度任务分配算法,并计算任务执行完整长度所需要的能量Ehigh;其中,所述完整的长度为完整的强制部分和可选部分;
步骤四:估计系统在任务集的调度周期[t,t+D]内可以使用的能量Esup;
步骤五:判断系统预测到的可用的能量Esup与Elow以及Ehigh之间的关系,并确定最终的任务分配长度;
步骤六:调度任务分配算法,将任务分配到处理器上;
步骤七:计算所有处理器上任务-处理器能耗因子EC,并将任务按照“任务-处理器能耗因子”进行升序排列;
步骤八:计算所有任务执行其强制部分所需要的能量,然后计算出所有任务的可选部分可以使用的剩余能量Eoptl;
步骤九:在系统可选部分可用能量下迭代地计算任务可选部分的执行长度,并返回新的任务集,其中每个任务可选部分的执行长度已经确定;
步骤十:计算每个处理器上所应该分配到的能量占整个系统可用能量的比例hr;
步骤十一:对于每个处理器,结合系统采集到的能量来实时调度任务。
2.如权利要求1所述的方法,其特征在于,所述任务分配算法具体包括:
步骤A1:根据任务的分配长度计算所有任务的能耗贡献因子,并将任务按能耗耗贡献因子由高到低排序,并选取第一个处理器开始分配任务;
步骤A2:依次将任务分配到处理器上,在分配每个任务的时候,检查是否满足任务的时间约束以及当前处理器的容量限制;如果不满足条件,则选取下一个处理器,直到所有的任务全部分配完或者所有的处理器全部用完;如果所有处理器已全部选取完,但仍然有任务未完成分配,则分配失败;
步骤A3:返回并保存每个处理器上所分配的任务集。
3.如权利要求1所述的方法,其特征在于,所述步骤四中的估计系统在任务集的调度周期[t,t+D]内可以使用的能量Esup是使用指数平滑预测法,通过计算指数平滑值,并配合一定的时间序列模型对未来一段时期的序列进行预测;其原理是任一期的指数平滑值都是本期实际观察值与前一期指数平滑值的加权平均;指数平滑法基于如下公式:
其中,指代第i期的指数平滑值;而xi是第i期的观察值;ω(0≤ω≤1)是平滑常数,它使得指数平滑具有随时间递减的性质;则是第i-1期的指数平滑值。
4.如权利要求1所述的方法,其特征在于,所述步骤五中的确定最终的任务分配长度具体包括:
步骤B1:判断Esup是否小于或等于Elow,如果是,则令所有任务的分配长度都为其强制部分;否则,执行步骤B2;
步骤B2:判读Esup是否大于或等于Ehigh,如果是,则令所有任务的分配长度为其完整的长度;否则,执行步骤B3;
步骤B3:令任务的分配长度为其强制部分和完整部分长度的中值;
步骤B4:调度任务分配算法,计算任务执行分配长度所需要的能量Edem;
步骤B5:判断|Esup-Edem|<ε,如果满足,则得到任务的分配长度;否则,执行步骤B6;其中,ε为一个很小的正数,取值0-0.1;
步骤B6:判断是否Esup大于Edem,如果是,则令任务的分配长度为其右区间的中值;否则,令任务的分配长度为其左区间的中值,并返回步骤B4。
5.如权利要求1所述的方法,其特征在于,所述步骤九中的计算任务可选部分的执行长度具体包括:
步骤C1:判读是否所有任务可选部分的执行长度已确定,如果是,步骤九结束;否则,执行步骤C2;
步骤C2:判断是否Eoptl大于0,如果是,执行步骤C3;否则,令接下来还未确定可选部分长度的所有任务可选部分的执行长度为0,步骤九结束;
步骤C3:判断是否Eoptl满足当前任务可选部分的完整执行,如果是,则令当前任务的可选部分执行长度为其可选部分完整长度;否则,执行步骤C4;
步骤C4:当前任务可选部分的执行长度为Eoptl除以当前任务-处理器能耗因子EC;
步骤C5:更新系统中剩余任务可选部分能够使用的能量Eoptl,并选取下一个任务,返回步骤C1。
6.如权利要求1所述的方法,其特征在于,所述步骤十一中实时调度任务具体包括:
步骤D1:基于比例系数hr,将系统中的能量分配给每个处理器;
步骤D2:判断处理器θr上的任务是否都已经执行完,如果是,则步骤十一结束;否则,执行步骤D3;
步骤D3:判断处理器θr中可用的能量是否能够支持当前任务完成其强制部分和由步骤九求出的任务可选部分的执行长度的执行,如果可以,则执行该任务的强制部分和其求出的任务可选部分的执行长度;否则,执行步骤D4;
步骤D4:判断处理器θr中可用的能量是否能够支持当前任务完成其强制部分,如果可以,则执行该任务的强制部分,否则,丢弃该任务;
步骤D5:更新处理器θr中可用的能量,并选取下一个任务;返回步骤D2。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510626523.1A CN105242966A (zh) | 2015-09-28 | 2015-09-28 | 一种面向自主获能异构系统的非精确实时任务调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510626523.1A CN105242966A (zh) | 2015-09-28 | 2015-09-28 | 一种面向自主获能异构系统的非精确实时任务调度方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105242966A true CN105242966A (zh) | 2016-01-13 |
Family
ID=55040620
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510626523.1A Pending CN105242966A (zh) | 2015-09-28 | 2015-09-28 | 一种面向自主获能异构系统的非精确实时任务调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105242966A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105955834A (zh) * | 2016-05-12 | 2016-09-21 | 华东师范大学 | 一种权衡系统寿命和软错误的优化系统可用时间的方法 |
CN106886274A (zh) * | 2017-01-22 | 2017-06-23 | 青海大学 | 一种数据中心能耗的管理方法及装置 |
CN107613288A (zh) * | 2017-09-25 | 2018-01-19 | 北京世纪东方通讯设备有限公司 | 一种诊断多路视频图像质量的分组方法及系统 |
CN110377404A (zh) * | 2019-06-14 | 2019-10-25 | 南京理工大学 | 面向自主获能系统的高可靠和高吞吐量任务调度方法 |
US10540625B2 (en) | 2016-07-22 | 2020-01-21 | Tata Consultancy Services Limited | Approximate computing for application performance in heterogeneous systems |
CN110990130A (zh) * | 2019-10-28 | 2020-04-10 | 华东师范大学 | 一种可再生自适应计算卸载分层服务质量优化方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110271283A1 (en) * | 2010-04-28 | 2011-11-03 | International Business Machines Corporation | Energy-aware job scheduling for cluster environments |
WO2013001576A1 (en) * | 2011-06-29 | 2013-01-03 | Nec Corporation | Multiprocessor system and method of saving energy therein |
CN103164274A (zh) * | 2013-02-18 | 2013-06-19 | 华东师范大学 | 一种基于温度约束的固定优先级实时任务静态调度方法 |
CN103914345A (zh) * | 2013-12-16 | 2014-07-09 | 西北工业大学 | 一种面向能量收集系统的嵌入式操作系统任务调度方法 |
CN104536826A (zh) * | 2015-01-26 | 2015-04-22 | 中国人民解放军国防科学技术大学 | 一种面向风光多能源数据中心的实时任务绿色调度方法 |
-
2015
- 2015-09-28 CN CN201510626523.1A patent/CN105242966A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110271283A1 (en) * | 2010-04-28 | 2011-11-03 | International Business Machines Corporation | Energy-aware job scheduling for cluster environments |
WO2013001576A1 (en) * | 2011-06-29 | 2013-01-03 | Nec Corporation | Multiprocessor system and method of saving energy therein |
CN103164274A (zh) * | 2013-02-18 | 2013-06-19 | 华东师范大学 | 一种基于温度约束的固定优先级实时任务静态调度方法 |
CN103914345A (zh) * | 2013-12-16 | 2014-07-09 | 西北工业大学 | 一种面向能量收集系统的嵌入式操作系统任务调度方法 |
CN104536826A (zh) * | 2015-01-26 | 2015-04-22 | 中国人民解放军国防科学技术大学 | 一种面向风光多能源数据中心的实时任务绿色调度方法 |
Non-Patent Citations (2)
Title |
---|
HUSSEIN EL GHOR,MARYLINE CHETTO,RAFIC HAGE CHEHADE: "A real-time scheduling framework for embedded systems with environmental energy harvesting", 《COMPUTERS & ELECTRICAL ENGINEERING》 * |
陈靓: "热感知自主获能实时系统任务调度机制研究与算法设计", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105955834A (zh) * | 2016-05-12 | 2016-09-21 | 华东师范大学 | 一种权衡系统寿命和软错误的优化系统可用时间的方法 |
US10540625B2 (en) | 2016-07-22 | 2020-01-21 | Tata Consultancy Services Limited | Approximate computing for application performance in heterogeneous systems |
CN106886274A (zh) * | 2017-01-22 | 2017-06-23 | 青海大学 | 一种数据中心能耗的管理方法及装置 |
CN106886274B (zh) * | 2017-01-22 | 2019-10-29 | 青海大学 | 一种数据中心能耗的管理方法及装置 |
CN107613288A (zh) * | 2017-09-25 | 2018-01-19 | 北京世纪东方通讯设备有限公司 | 一种诊断多路视频图像质量的分组方法及系统 |
CN107613288B (zh) * | 2017-09-25 | 2019-06-25 | 北京世纪东方通讯设备有限公司 | 一种诊断多路视频图像质量的分组方法及系统 |
CN110377404A (zh) * | 2019-06-14 | 2019-10-25 | 南京理工大学 | 面向自主获能系统的高可靠和高吞吐量任务调度方法 |
CN110377404B (zh) * | 2019-06-14 | 2023-05-05 | 南京理工大学 | 面向自主获能系统的高可靠和高吞吐量任务调度方法 |
CN110990130A (zh) * | 2019-10-28 | 2020-04-10 | 华东师范大学 | 一种可再生自适应计算卸载分层服务质量优化方法 |
CN110990130B (zh) * | 2019-10-28 | 2023-05-12 | 华东师范大学 | 一种可再生自适应计算卸载分层服务质量优化方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105242966A (zh) | 一种面向自主获能异构系统的非精确实时任务调度方法 | |
CN106020933B (zh) | 基于超轻量虚拟机的云计算动态资源调度系统及方法 | |
CN104317658A (zh) | 一种基于MapReduce的负载自适应任务调度方法 | |
Lu et al. | Accurate modeling and prediction of energy availability in energy harvesting real-time embedded systems | |
CN110737529A (zh) | 一种面向短时多变大数据作业集群调度自适应性配置方法 | |
CN103295100A (zh) | 项目管理进度编排方法和系统 | |
CN106410781B (zh) | 一种电力用户需求响应潜力确定方法 | |
CN110247411B (zh) | 一种用户侧物联化智能光储设备能量动态分配方法 | |
CN102929715A (zh) | 基于虚拟机迁移的网络资源调度方法和系统 | |
CN109978293A (zh) | 一种多任务智能排班方法、装置、设备和存储介质 | |
CN106991006B (zh) | 支持依赖和时间平衡的云工作流任务聚类方法 | |
CN105302630A (zh) | 一种虚拟机的动态调整方法及其系统 | |
CN106951059A (zh) | 基于dvs与改进蚁群算法的云数据中心节能方法 | |
CN104298550A (zh) | 一种面向Hadoop的动态调度方法 | |
CN104765642B (zh) | 云环境下基于动态预测模型的虚拟机部署方法及系统 | |
CN109271232A (zh) | 一种基于云计算平台的集群资源分配方法 | |
CN104333569A (zh) | 基于用户满意度的云任务调度算法 | |
Hatzopoulos et al. | Dynamic virtual machine allocation in cloud server facility systems with renewable energy sources | |
CN103823718A (zh) | 一种面向绿色云计算的资源配置方法 | |
CN103942102A (zh) | 基于双优先级的实时任务调度方法 | |
CN104639626A (zh) | 一种多级负载预测与云资源弹性配置方法与监控配置系统 | |
JP2012254007A5 (zh) | ||
CN104834995A (zh) | 基于云计算的工作流双向调度方法 | |
CN104407912A (zh) | 一种虚拟机配置方法及装置 | |
CN101477475A (zh) | 运用蚁群算法优化动态网格工作流的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB03 | Change of inventor or designer information |
Inventor after: Wei Tongquan Inventor after: Wang Junma Inventor after: Zhou Junlong Inventor before: Wang Junma Inventor before: Wei Tongquan Inventor before: Zhou Junlong |
|
COR | Change of bibliographic data | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160113 |
|
WD01 | Invention patent application deemed withdrawn after publication |