CN105677449A - 一种适用于数控系统的低功耗调度方法 - Google Patents

一种适用于数控系统的低功耗调度方法 Download PDF

Info

Publication number
CN105677449A
CN105677449A CN201410653044.4A CN201410653044A CN105677449A CN 105677449 A CN105677449 A CN 105677449A CN 201410653044 A CN201410653044 A CN 201410653044A CN 105677449 A CN105677449 A CN 105677449A
Authority
CN
China
Prior art keywords
task
speed
processor
time
power consumption
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.)
Granted
Application number
CN201410653044.4A
Other languages
English (en)
Other versions
CN105677449B (zh
Inventor
郭锐锋
邓昌义
张忆文
刘娴
王鸿亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenyang Institute of Computing Technology of CAS
Original Assignee
Shenyang Institute of Computing Technology of CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenyang Institute of Computing Technology of CAS filed Critical Shenyang Institute of Computing Technology of CAS
Priority to CN201410653044.4A priority Critical patent/CN105677449B/zh
Publication of CN105677449A publication Critical patent/CN105677449A/zh
Application granted granted Critical
Publication of CN105677449B publication Critical patent/CN105677449B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明涉及实时系统领域任务的实时调度,具体的说是一种适用于数控系统的低功耗调度方法。本发明在任务集调度之前,第一阶段计算关键速度。第二阶段在保证任务实时性前提下,通过延迟函数计算每个任务的执行速度,如果速度大于关键速度,则按照此速度执行,否则,任务使用关键速度执行任务,出现空闲时间时,通过空闲时间的比较,确定处理器进入空闲状态或者休眠状态。采用本发明方法,充分利用系统的空闲时间,降低处理器的运行速度,比现有的低功耗调度方法平均节约18.06%的能耗。

Description

一种适用于数控系统的低功耗调度方法
技术领域
本发明涉及实时系统领域周期任务的实时调度,具体的说是一种适用于数控系统的低功耗调度方法。
背景技术
纳米技术制造工艺的不断发展,使得处理器的性能不断提高,但能耗也日益凸显,低功耗设计逐渐成为嵌入式实时系统设计的重要问题。伴随着集成电路规模的飞速发展,集成电路中静态能耗在总功耗中比重越来越大。影响整个系统的可靠性。数控系统是一种硬实时嵌入式系统,不仅要确保任务的实时性、可靠性,而且要降低处理器的能耗。
为了减少因泄露电流所产生的静态能耗,处理器可以利用动态电源管理(DPM)技术进入睡眠状态(又称关闭)来降低处理器静态能耗。DVS技术是在保证任务不错过截止期限的情况下,利用空闲时间调节处理器的运行速度。
现有的周期性任务的节能调度方法,在保证每个将要执行的任务都满足截止期的同时,该方法利用对将要执行的任务进行预测,推测任务执行的时间,尽可能降低处理器速度,推迟任务的执行。但是忽略了静态功耗以及处理器状态转换开销。
发明内容
针对现有低功耗调度方法的不足之处,本发明提出了一种适用于数控系统的低功耗调度方法
本发明为实现上述目的所采用的技术方案是:一种适用于数控系统的低功耗调度方法,包括以下步骤:
在t=0时刻,所有任务同时释放,计算离线状态的关键速度;
当有新任务到达时,设置其中,为任务执行过程剩余的时间,Ci为所述新任务Ti最坏情况下的执行时间;
当有任务完成时,设置该任务的Cleft=0;如果有其他新任务到达,选择当前要执行的任务,设置当前要执行的任务的运行速度,如果当前要执行的任务的运行速度小于关键速度,则设置当前要执行的任务的运行速度为关键速度;否则,保持当前要执行的任务的运行速度值不变;如果没有新任务到达,计算处理器无任务执行的时间tidle
在到达的新任务中选择一个任务执行,在该任务的执行过程中,其不断减少;
如果处理器无任务执行的时间大于tθ,则利用DPM技术将处理器进入休眠状态;否则,处理器以关键速度运行;其中,tθ为处理器无任务执行状态下所产生的最小空闲时间。
所述当前要执行的任务的运行速度,通过以下步骤计算:
首先计算所有任务的总利用率:U=C1/P1+...+Cn/Pn,其中,C1...+Cn为对应新任务最坏情况下的执行时间,P1...Pn为对应任务的周期;
然后遍历任务集中的所有任务,Ti∈{T1,...,Tn|P1≥…≥Pn},其中任务集按照截止时间逆序排列,截止时间越长,排序越靠前;
对任务的利用率进行更新操作:U=U-Ci/Pi
设置任务剩余执行时间: x = max ( 0 , C left i - ( 1 - U ) ( P i - P n ) ) ;
通过迭代更新操作:和S=S+x,最终计算出当前要执行任务的速度S。
所述处理器无任务执行状态下所产生的最小空闲时间tθ为:
tθ=Esw/Pidle
其中,Exw为处理器空闲时的最低能量开销,Pidle为处理器空闲时的功耗。
所述在到达的新任务中选择一个任务执行通过EDF调度方法选择要执行的任务,其原则为:任务截止期限越短,其优先级越高;当任务的截止期限相同时,比较任务的到达时间,最先到达的任务的优先级越高。
本发明具有以下优点及有益效果:
1.采用本发明方法,充分利用系统的空闲时间,降低处理器的运行速度,比现有的低功耗调度方法平均节约18.06%。
2.在保证任务实时性前提下,通过延迟函数计算每个任务的执行速度,该方法引入关键速度来确定处理器的运行速度,通过比较空闲时间,确定处理器的是否进入休眠状态。
3.高能耗会显著提高系统的发热量,影响系统运行的稳定性。增加了系统耗能量,本发明的方法能够显著的降低系统能耗,因此增加系统的稳定性和降低系统能耗。
附图说明
图1为本发明方法处理步骤流程图;
图2为本发明的仿真实验结果图(负载=0.5.WCET/BCET对能耗的影响);
图3为本发明的仿真实验结果图(WCET/BCET=5.负载对任务集平均能耗的影响)。
具体实施方式
下面结合附图及实施例对本发明做进一步的详细说明。
参见附图1,任务集调度之前,方法把任务的执行时间划分为离线和在线两个阶段,第一阶段计算关键速度。第二阶段在保证任务实时性前提下,通过延迟函数计算每个任务的执行速度,如果速度大于关键速度,则按照此速度执行,否则,任务使用关键速度执行任务,出现空闲时间时,通过空闲时间的比较,确定处理器进入空闲状态或者休眠状态。
处理器存在三个状态:工作状态,空闲状态,休眠状态。当处理器处于空闲状态时,功耗主要来自漏电功耗,利用动态电源管理技术关闭处理器,可以降低功耗。当处理器进入工作状态时,通过利用动态电压调整(DVS)技术降低处理器速度,可以减少处理器动态功耗。但是降低处理器速度会延长任务的执行时间,系统静态功耗会增加。为了更好的降低系统层次的能耗,引入了关键速度,即系统运行的最低速度。处理器以速度S执行一个时钟周期的能耗为P(S)/S=Pdep(S)/S+Pind(S)/S是凸函数,且使得P(S)/S有最小值的速度即是关键速度。
在t=0时刻,所有任务同时释放,计算离线状态的关键速度其中,速度无关的功耗Pind和与速度相关的Pdep,Pind主要来自漏电电流功耗,Pdep主要来自动态功耗,C为任务Ti的最坏情况下的执行时间。(可参考:NiuL,LiW.Energy-efficientfixed-priorityschedulingforreal-timesystemsbasedonthresholdwork-demandanalysis[C]//Hardware/SoftwareCodesignandSystemSynthesis(CODES+ISSS),2011Proceedingsofthe9thInternationalConferenceon.IEEE,2011:159-168.)。
每当新任务Ti到达时,设置当有任务完成,设置如果有新任务达到,选择要执行的任务,设置运行速度Si=defer(),如果Si<Scrit,Si=Scrit。如果没有新任务到达,计算任务的空闲时间tidle。任务Tx在时刻t被调度,减少如果tidle>tθ,利用DPM技术将处理器进入休眠状态,否则,处理器以关键速度Scrit运行。
在处理器上所分配的任务集T具有最低能耗一定满足:当时,以U为速度值来执行任务集T中所有任务;当U≤Scrit时,最佳节能执行速度值只能从关键速度U或Scrit中选择。
时,根据功耗函数的凸函数性质可知U是最佳执行速度。当U≤Scrit时,假设以U速度执行任务集T中所有任务时的处理器能耗为E(U)=P(U)·P,而以Scrit为速度执行任务时产生的空闲时间tcrit=P-UP/Scrit
(1)如果S<U,则所有任务的执行时间为UP/S>P,显然此时不是最佳节能调度选择。
(2)如果S>Scrit,则所有任务的执行时间为:
存在空闲时间当tidle≤tθ,以S为速度的处理器能耗 E ( S ) = P ( S ) &CenterDot; UP S crit + P idle &CenterDot; t crit , 而以Scrit为速度的能耗为 E ( S crit ) = P ( S crit ) &CenterDot; UP S crit + P idle &CenterDot; t crit . 因为P(S)/S函数在S>Scrit范围中属于单调递增函数,所以进而E(S)>E(Scrit)。当tidle>tθ时,以S为速度的处理器能耗为此时如果tcrit≤tθ,以Scrit为速度的处理器能耗为 E ( S crit ) = P ( S crit ) &CenterDot; UP S crit + P idle &CenterDot; t crit &le; P ( S crit ) &CenterDot; UP S crit + E sw . 如果tθ<tcrit<tidle,则能耗为同理,因为P(S)/S函数在S>Scrit范围内属于单调递增函数,可得E(S)>E(Scrit)。
(3)如果U<S<Scrit,则所有任务的执行时间为存在空闲时间tidle=P-UP/S,tcrit>tidle。当tidle>tθ时,tcrit>tθ,以S为速度的处理器能耗为 E ( S ) = P ( S ) &CenterDot; UP S crit + E sw . 以关键速度Scrit运行的处理器能耗为 E ( S crit ) = P ( S crit ) &CenterDot; UP S crit + E sw , 因为P(S)/S函数在S<Scrit范围中属于单调递减函数,故E(S)>E(Scrit)。当tidle≤tθ,以速度S为速度的处理器能耗为。因为Pidle>P(Smin)>P(0),且能耗函数P(S)属于凸函数性质,所以 E ( S ) &GreaterEqual; P ( S ) &CenterDot; UP S + P ( 0 ) &CenterDot; ( P - PU / S ) > P ( S &CenterDot; U / S + 0 &CenterDot; ( 1 - U / S ) ) &CenterDot; P = E ( U )
图2设置负载为0.5,从1增加到10,步长为1.还可以看出本发明方法方法的能耗始终比LA-EDF方法的能耗低,随着的增大,本发明方法节能效果越明显。
图3随着负载的增大,LA-EDF方法和该方法的平均能耗都增大。经过计算;总的节约能耗为18.06%,总之该方法比LA-EDF-方法具有更好的节能效果。

Claims (4)

1.一种适用于数控系统的低功耗调度方法,其特征在于,包括以下步骤:
在t=0时刻,所有任务同时释放,计算离线状态的关键速度;
当有新任务到达时,设置其中,为任务执行过程剩余的时间,Ci为所述新任务Ti最坏情况下的执行时间;
当有任务完成时,设置该任务的Cleft=0;如果有其他新任务到达,选择当前要执行的任务,设置当前要执行的任务的运行速度,如果当前要执行的任务的运行速度小于关键速度,则设置当前要执行的任务的运行速度为关键速度;否则,保持当前要执行的任务的运行速度值不变;如果没有新任务到达,计算处理器无任务执行的时间tidle
在到达的新任务中选择一个任务执行,在该任务的执行过程中,其不断减少;
如果处理器无任务执行的时间大于tθ,则利用DPM技术将处理器进入休眠状态;否则,处理器以关键速度运行;其中,tθ为处理器无任务执行状态下所产生的最小空闲时间。
2.根据权利要求1所述的一种适用于数控系统的低功耗调度方法,其特征在于,所述当前要执行的任务的运行速度,通过以下步骤计算:
首先计算所有任务的总利用率:U=C1/P1+...+Cn/Pn,其中,C1...+Cn为对应新任务最坏情况下的执行时间,P1...Pn为对应新任务的周期;
然后遍历任务集中的所有任务,Ti∈{T1,...,Tn|P1≥…≥Pn},其中任务集按照截止时间逆序排列,截止时间越长,排序越靠前;
对任务的利用率进行更新操作:U=U-Ci/Pi
设置任务剩余执行时间: x = max ( 0 , C left i - ( 1 - U ) ( P i - P n ) ) ;
通过更新操作:和S=S+x,最终计算出当前要执行任务的速度S。
3.根据权利要求1所述的一种适用于数控系统的低功耗调度方法,其特征在于,所述处理器无任务执行状态下所产生的最小空闲时间tθ为:
tθ=Esw/Pidle
其中,Exw为处理器空闲时的最低能量开销,Pidle为处理器空闲时的功耗。
4.根据权利要求1所述的一种适用于数控系统的低功耗调度方法,其特征在于,所述在到达的新任务中选择一个任务执行通过EDF调度方法选择要执行的任务,其原则为:任务截止期限越短,其优先级越高;当任务的截止期限相同时,比较任务的到达时间,最先到达的任务的优先级越高。
CN201410653044.4A 2014-11-17 2014-11-17 一种适用于数控系统的低功耗调度方法 Active CN105677449B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410653044.4A CN105677449B (zh) 2014-11-17 2014-11-17 一种适用于数控系统的低功耗调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410653044.4A CN105677449B (zh) 2014-11-17 2014-11-17 一种适用于数控系统的低功耗调度方法

Publications (2)

Publication Number Publication Date
CN105677449A true CN105677449A (zh) 2016-06-15
CN105677449B CN105677449B (zh) 2019-02-26

Family

ID=56945347

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410653044.4A Active CN105677449B (zh) 2014-11-17 2014-11-17 一种适用于数控系统的低功耗调度方法

Country Status (1)

Country Link
CN (1) CN105677449B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106708242A (zh) * 2016-12-08 2017-05-24 华侨大学 一种硬实时系统能耗最优方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6327631B1 (en) * 1995-06-26 2001-12-04 Sony Corporation Signal processing apparatus
CN103810043A (zh) * 2012-11-09 2014-05-21 中国科学院沈阳计算技术研究所有限公司 一种适用于数控系统周期任务的节能调度方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6327631B1 (en) * 1995-06-26 2001-12-04 Sony Corporation Signal processing apparatus
CN103810043A (zh) * 2012-11-09 2014-05-21 中国科学院沈阳计算技术研究所有限公司 一种适用于数控系统周期任务的节能调度方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106708242A (zh) * 2016-12-08 2017-05-24 华侨大学 一种硬实时系统能耗最优方法
CN106708242B (zh) * 2016-12-08 2019-06-04 华侨大学 一种硬实时系统能耗最优方法

Also Published As

Publication number Publication date
CN105677449B (zh) 2019-02-26

Similar Documents

Publication Publication Date Title
CN103810043B (zh) 一种适用于数控系统周期任务的节能调度方法
CN106970835B (zh) 固定优先级资源受限系统层次能耗优化方法
CN106445070B (zh) 一种硬实时系统资源受限偶发任务能耗优化调度方法
CN109324880A (zh) 一种适用于实时系统周期任务模型的低功耗调度方法
CN109739332B (zh) 一种多任务通用能耗优化方法
CN103677984A (zh) 一种物联网计算任务调度系统及其方法
CN108539743B (zh) 一种高效节能型配电终端
CN103914346A (zh) 一种基于分组的实时操作系统双优先级任务调度节能方法
CN105630126B (zh) 一种基于常带宽服务器混合任务低功耗调度方法
US9223381B2 (en) Method and apparatus to save power upon resume in multi-core system
CN100590571C (zh) 实时嵌入式系统edf低功耗调度的msr方法
CN202261051U (zh) 一种开关电源
CN101604198B (zh) 一种降低嵌入式系统功耗的方法
CN105677449A (zh) 一种适用于数控系统的低功耗调度方法
CN101847044B (zh) 一种适用于千万亿次计算机机群的低功耗管理方法
CN105933702A (zh) 一种基于任务敏感的功耗控制方法
CN106293009B (zh) 一种基于区域划分的嵌入式节能调度方法
CN111078401B (zh) 一种周期任务温度感知能耗优化方法
CN106708242A (zh) 一种硬实时系统能耗最优方法
CN106815073B (zh) 一种基于平衡因子的动态偶发任务低功耗调度方法
CN106371914A (zh) 一种基于负载强度的多核任务调度方法及系统
CN104536833A (zh) 一种提高高频交易性能的方法
CN110750150A (zh) 一种tbox的自动节能方法、系统及终端
CN111324197B (zh) 一种基于三速度周期任务的降低系统能耗的方法
CN109656697A (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
GR01 Patent grant
GR01 Patent grant