CN106815073B - 一种基于平衡因子的动态偶发任务低功耗调度方法 - Google Patents

一种基于平衡因子的动态偶发任务低功耗调度方法 Download PDF

Info

Publication number
CN106815073B
CN106815073B CN201510856003.XA CN201510856003A CN106815073B CN 106815073 B CN106815073 B CN 106815073B CN 201510856003 A CN201510856003 A CN 201510856003A CN 106815073 B CN106815073 B CN 106815073B
Authority
CN
China
Prior art keywords
processor
speed
task
energy consumption
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.)
Active
Application number
CN201510856003.XA
Other languages
English (en)
Other versions
CN106815073A (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 Zhongke CNC Technology Co.,Ltd.
Original Assignee
Shenyang Golding Nc & Intelligence Tech Co ltd
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 Golding Nc & Intelligence Tech Co ltd filed Critical Shenyang Golding Nc & Intelligence Tech Co ltd
Priority to CN201510856003.XA priority Critical patent/CN106815073B/zh
Publication of CN106815073A publication Critical patent/CN106815073A/zh
Application granted granted Critical
Publication of CN106815073B publication Critical patent/CN106815073B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5012Processor sets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Abstract

本发明涉及嵌入式数控实时系统领域偶发任务的调度,具体的说是一种基于平衡因子的动态偶发任务低功耗调度方法。本发明方法首先将任务加入待执行集合,然后在任务从集合释放出来准备执行时,根据EDF策略选择要执行的任务,当要执行所选择的任务时,使用平衡因子方法判断采用关键速度策略或传统DVS调度策略来重新设置处理器速度,并在任务执行时随时更新处理器速度,以及在无任务执行时关闭处理器,进一步减少系统功耗。实验表明,本发明方法与目前现有的DVSST和DSTLPSA方法相比节能效果更好,可以分别节约10.3%~62.5%和5.4%~20.6%的能耗。

Description

一种基于平衡因子的动态偶发任务低功耗调度方法
技术领域
本发明涉及实时系统领域周期任务的实时调度,具体的说是一种基于平衡因子的动态偶发任务低功耗调度方法。
背景技术
数控系统作为数控机床中核心部件,其技术水平不仅直接影响数控机床的性能质量和市场占有率,而且对于重要关键零件的加工也具有非常重要的意义。随着制造工艺的日益精密,集成电路规模的高速发展,系统功耗急剧上升,高功耗带来的高温导致系统发生故障的可能性增加,降低整个系统的可靠性;数控系统的应用特征使得优化系统能耗成为系统设计需要考虑的重要因素,同时制约着下一代数控系统在市场中的竞争力。对于CMOS电路,功耗的主要来源是动态功耗和静态功耗,其中用于调度任务的动态功耗占总功耗的主要部分。动态电压调节(dynamic voltage scaling)可以根据处理器实时的负载情况,增加或降低电源电压。由于电路的功耗与电源电压存在平方的关系,因此在系统空闲或低速运行时,降低电源电压可以大幅度降低电路的功耗。
尽管很多研究者利用关键速度和DPM技术有效降低系统总能耗,但是很少探究任务在选择传统DVS调度策略和关键速度之间存在的最低边界问题。在系统低于关键速度时,只是简单的让系统速度等于关键速度运行。经过研究发现,关键速度策略在减少系统功耗上并不是最优的选择,在关键速度和传统DVS技术中存在一个平衡因子,当系统速度低于关键速度时,这个平衡因子决定系统是否采用关键速度或者按照当前低于关键速度的速度执行任务。
发明内容
针对现有技术中存在的上述不足之处,本发明要解决的技术问题是提供一种适用于数控系统的低功耗调度方法,为了进一步降低处理器功耗,该方法使用平衡因子判断处理器是否进入睡眠状态。
本发明为实现上述目的所采用的技术方案是:一种基于平衡因子的动态偶发任务低功耗调度方法,包括以下步骤:
步骤1:在t=0时刻,此时处理器以最小速度Smin运行;初始化所有0时刻到达处理器的任务Ti,并将任务Ti加入集合TDS;当集合TDS为空,此时系统以最小速度Smin运行;
步骤2:当任务Ti从TDS集合释放出来放入待执行集合TWS准备执行时,设置处理器速度增加到Ci/Pi,并根据EDF策略从待执行集合TWS中选择将要执行的任务;所述待执行集合TWS为集合TDS的子集;
步骤3:当要执行所选择的任务时,检测处理器当前速度;如果处理器当前速度低于关键速度Scrit,则使用平衡因子方法判断采用关键速度策略或传统DVS调度策略来重新设置处理器速度;如果处理器当前速度不低于关键速度Scrit,处理器按当前速度执行;
步骤4:当开始执行某项任务时,执行任务剩余时间W不断减少,当W=0时,该任务执行完成,则根据任务的真实执行时间ACi更新处理器当前速度为ACi/Pi;如果此时待执行集合TWS≠Φ,后续任务被激活,则使用平衡因子方法判断采用关键速度策略或传统DVS调度策略来重新设置处理器速度;
步骤5:当任务Ti的当前执行时间超过任务最后截止期限,即:t≥Ri+Pi,则设置处理器速度减少到Ci/Pi,把当前任务Ti加入集合TDS返回步骤1;
步骤6:如果任务执行完成,TWS=Φ,没有新任务被激活,计算空闲时间tidle;如果tidle≥t0,则关闭处理器,进入休眠状态;如果tidle<t0,设置处理器速度为S=Smin运行;所述
Figure GDA0002359250740000021
其中,Ri表示任务Ti的就绪时间,Pi是任务Ti的周期,t为任务Ti的当前执行时间;Ci是任务Ti最坏情况下的执行时间,Eo为处理器从空闲状态进入休眠状态的能耗开销,Pidle为处理器处于空闲状态的能耗。
所述EDF策略为根据任务的截止时间动态分配任务的优先级;截止时间越短,优先级越高。
所述关键速度策略为:处理器能耗最小时对应的速度为关键速度。
所述处理器能耗、关键速度计算如下:
在给定闭区间[ts,te]内,任务Ti=(Ri,Ci,Pi),假设处理器状态转换开销为E0,则处理器能耗为:
P(s)=(α·S3+Pind)·C/S+E0
P(s)为关于参数s的凸函数,对公式进行求导
Figure GDA0002359250740000031
得到处理器能耗最小值时的根
Figure GDA0002359250740000032
即,关键速度
Figure GDA0002359250740000033
其中,α为负载电容,Pind为与处理器速度无关的设备所消耗的功耗,C为任务Ti的执行周期,Eo为处理器从空闲状态进入休眠状态的能耗开销。
所述传统DVS调度策略为:
在给定闭区间[ts,te]内,任务Ti=(Ri,Ci,Pi),处理器能耗为:
E(s)=(α·S3+Pind)·C/S+(te-ts-C/S)·Pind=α·C·S2+(te-ts)·Pind
E(S)是关于S的单调递增函数,如果S>0,速度S越低则能耗越小;并且,传统DVS调度策略的处理器速度为C/(te-ts);
其中,α为负载电容,Pind为与处理器速度无关的设备所消耗的功耗,C为任务Ti的执行周期,Eo为处理器从空闲状态进入休眠状态的能耗开销。
所述使用平衡因子方法判断采用关键速度策略或传统DVS调度策略来设置处理器速度具体为:按照平衡因子C0设置处理器速度;使得处理器在闭区间内的能耗最小;
在区间[0,Scrit·(te-tS))内,对当前任务Ti的执行周期C小于Scrit×(te-tS);
将按照关键速度策略计算的处理器能耗P(s)与传统DVS调度策略计算的处理器能耗E(s)作差:
Figure GDA0002359250740000034
通过变换得到:
Figure GDA0002359250740000041
通过求导得到平衡因子
Figure GDA0002359250740000042
如果C≤C0,则E(s)≥P(s),选择按照处理器能耗小的关键速度策略来设置处理器速度,即设置处理器速度为关键速度
Figure GDA0002359250740000043
来执行任务;如果C>C0,则E(s)<P(s),选择按照处理器能耗小的传统DVS调度策略来设置处理器速度,即设置处理器速度为C/(te-ts)来执行任务;
其中,α为负载电容,Pind为与处理器速度无关的设备所消耗的功耗,Eo为处理器从空闲状态进入休眠状态的能耗开销;Scrit为关键速度,ts和te分别为闭区间[ts,te]的端点值。
本发明具有以下优点及有益效果:
1.采用本发明,充分利用系统的空闲时间,降低处理器的运行速度,依能耗指标评价所提的方法的性能。实验表明本发明比现有的DVSST方法和DSTLPSA方法节约10.3%~62.5%和5.4%~20.6%的能耗。
2.本发明在离线阶段调整处理器速度根据释放任务的负载,充分利用处理器的资源;在线阶段通过高优先级任务提前完成剩余的空闲时间动态更新处理器速度,并且当处理器没有任务执行时,结合提出的平衡因子关键速度调度策略,判断是否使用DPM技术将处理器进入休眠状态以达到进一步降低能耗的目的。
3.高能耗会显著提高系统的发热量,影响系统运行的稳定性。增加了系统耗能量,本发明的方法能够显著的降低系统能耗,因此增加系统的稳定性和降低系统能耗。
附图说明
图1(a)能耗函数截距0.08·Δt-0.8>0;图1(b)能耗函数截距0.08·Δt-0.8<0
图2为本发明处理步骤流程图;
图3为本发明方法的系统利用率对能耗的影响仿真实验结果图;
图4为本发明方法的任务真实负载对能耗的影响仿真实验结果图。
具体实施方式
下面结合附图及实施例对本发明做进一步的详细说明。
如图1(a)和图1(b)所示,DVS和关键速度策略作为目前低功耗调度方法常用技术,得到了广泛的应用,本文发明结合了这两种低能耗技术。考虑传统关键速度调度策略存在的不足,提出基于平衡因子的偶发低功耗调度方法。本发明在离线阶段调整处理器速度根据释放任务的负载,充分利用处理器的资源;在线阶段通过高优先级任务提前完成剩余的空闲时间动态更新处理器速度,并且当处理器没有任务执行时,结合提出的平衡因子关键速度调度策略,判断是否使用DPM技术将处理器进入休眠状态以达到进一步降低能耗的目的。
考虑有n个偶发任务的实时任务集T={T1,T2,…,Tn},并且使用EDF[13]调度策略调度该任务集,每个任务Ti用二元组(Pi,Ci)表示,其中Pi是任务Ti的周期,Ci是任务Ti最坏情况下的执行时间,并且假设任务的相对截止期限Di等于其周期。假设用ACi表示任务Ti的真实执行时间,Ri表示任务Ti的就绪时间,Di表示任务Ti的截止期限,
Figure GDA0002359250740000051
表示在最大运行速度下,任务集的总利用率。假设处理器提供连续的频率和电压,对频率进行归一化处理,所以速度的取值范围为[Smin,1]。remi(t)表示任务Ti在时刻t的还没有执行的时间。
处理器根据任务活动情况可以在空闲,睡眠,活跃三个状态之间转换(可参考:Zhang Y,Guo R.Power-aware scheduling algorithms for sporadic tasks in real-time systems[J].Journal of Systems and Software,2013,86(10):2611-2619.)。当处理器没有任务执行时,此时处于空闲状态,功耗主要来自Pind。如果处理器长时间处于空闲状态可以将处理器置于睡眠状态进一步减少功耗,处理器状态转换操作需要能耗开销和时间开销。时间开销是指进入休眠状态和唤醒操作所需要的时间。文献[18]指出这一开销非常的小,故本文不考虑处理器状态转换的时间开销。假设处理器处于空闲状态的功耗为Pidle,处理器从空闲状态进入休眠状态的能耗开销为E0。根据空闲时间大小是否超过
Figure GDA0002359250740000061
决定处理器是否进入休眠状态或者保持空闲状态。(可参考:Niu L,Li W.Energy-efficient fixed-priority scheduling for real-time systems based on thresholdwork-demand analysis[C]//Hardware/Software Codesign and System Synthesis(CODES+ISSS),2011Proceedings of the 9th International Conference on.IEEE,2011:159-168.)。
对于一个任务Ti,当系统速度低于关键速度时,使用BF方法决定是否采用关键速度,为了更好的阐述我们的思想,首先介绍相关定义。
定义1:对于任务Ti=(R,C,D),任务运行的可行闭区间为[ts,te],在这个区间内任务不被抢占。不失一般性,我们假设,ts≥R,te≤D。在这个定义下,本文的解决的问题可以如下表述:
问题1:在给定闭区间[ts,te]调度任务Ti=(R,C,D),选择最低能耗的速度调度策略,即是在这个区间总的能耗最小。
引理1.在闭区间[ts,te]调度任务Ti=(R,C,D),如果处理器在空闲时间总是关闭,则在区间内执行任务Ti最小的速度选择关键速度Scrit
证明.如果处理器关闭,假设总的处理器状态转换开销为E0,则在闭区间总的能耗可有一下公式得出:
P(S)=(α·S3+Pind)·C/S+E0 (1)
从程式(1)中可知,P(S)关于参数S的凸函数.对程式进行求导得最小值:
Figure GDA0002359250740000062
得程式最小值时的根
Figure GDA0002359250740000063
也即是关键速度Scrit
引理2.在闭区间[ts,te]调度任务Ti=(R,C,D),如果处理器在空闲时间不关闭,则在区间内执行任务Ti最小能耗下的速度选择传统DVS调度策略的速度:C/(te-ts)。
证明:如果处理器从不关闭,在闭区间内总的最少能耗为:
E(s)=(α·S3+Pind)·C/S+(te-ts-C/S)·Pind=α·S2+(te-ts)·Pind (2)
显然,E(s)是关于s的单调递增函数,如果S>0,速度S越低则能耗越小。
从引理1和引理2中,在闭区间内对于任务获得最小能耗的速度应该在关键速度和传统DVS速度之间选择。由于当任务的执行周期C大于或等于Scrit×(te-ts),任务不管选择那种速度调节策略能耗一样,因此,我们仅考虑当任务的执行周期C小于Scrit×(te-ts)。在这种情况下,为了更直观表达问题,我们采用Intel XScale处理器能耗模型,则(1)和(2)可以进一步化简。采用关键速度策略下的能耗为:
E1=(0.4×C+0.8) (3)
如果我们采用传统的DVS调度任务其中Δt=te-ts则公式(2)可以简化为:
Figure GDA0002359250740000071
正如实例中的例子,E1是否大于E2取决去任务的执行周期C。我们将两式做差得到关于C的函数F(C):
Figure GDA0002359250740000072
下面我将证明在给定的闭区间[ts,te]内,F(C)存在一个根C0(平衡因子),使得F(C)在区间[0,0.3·Δt)中大于0或者小于0。
定理1.考虑任务Ti=(R,C,D)(0<C<0.3·Δt)在连续闭区间[ts,te]执行,则E1和E2被定义为方程(3)和(4),则在区间[0,0.3·Δt)存在一个平衡因子C0,即是,如果C≤C0,E2≥E1;否则,E2<E1
图1(a)能耗函数截距0.08·Δt-0.8>0;图1(b)能耗函数截距0.08·Δt-0.8<0
证明:
如图1(a)和图1(b)给出了方程(3)的曲线,从图中可以看出:
当截距大于0时,即图1(a),F(C)在区间(0,0.3·Δt]和X轴有一个交点C0,这个点即是平衡因子,当任务的执行周期C在(0,C0]时,F(C)>0,得出:E2≥E1;否则,E2<E1
当截距小于0,如图1(b),此时F(C)在区间(0,0.3·Δt]恒小于0,得出E2<E1
当C≥0.3·Δt时,两种调度策略消耗的能耗一样,选择关键速度策略和传统DVS策略没有差别。
综合上述,我们证明,在(0,0.3·Δt]区间内,对于任务要获得最小的能耗,其执行速度选择依赖任务执行周期C和平衡因子的关系,当C小于C0我们选择传统DVS策略执行任务,否则选择关键速度策略执行任务。
图3展示了在表1中的试验数据下的各方法的能耗,保持任务负载和转换开销不变,改变系统利用率从0.1到0.8,根据实验结果可以得到如下结论:
实验结果显示,三种方法的能耗消耗和系统利用率成正相关关系,随着利用率的增加,本发明(LP-DSAFST),DVSSST和DSTLPSA能耗消耗都增加。这是因为总的利用率是能耗消耗的主要因素。总利用率增加,系统的空闲时间就越少,任务速度可以调节的机会降低。DSTLPSA方法相比DVSST方法更节能是由于DSTLPSA方法采用关键速度,当系统产生的空闲时间比较长时,DSTLPSA方法可以通过关闭处理器进一步降低系统能耗。本发明消耗的能耗比DSTLPSA方法低,是因为本发明利用了平衡因子,在处理器是否进入睡眠状态时,进行了判断,进一步降低系统能耗。当U=0.8,本发明(LP-DSAFST)相比DVSSST和DSTLPSA方法消耗的能耗节约41.36%和18.62%能耗.
表1:系统利用率对能耗的影响
Utilization AC/WCET overhead
0.1-0.8 0.5 0.1
表2:任务真实负载对能耗的影响
AC/WCET Utilization Overhead
0.1-1.0 0.5 0.1
图4展示了在表2中的实验数据下本发明的试验结果。随着AC/WCET的增加,方法本发明的归一化能耗始终低于DVSST和DSTLPSA方法,但差距逐渐缩小。这是因为在利用率和转换开销一定的情况下,任务负载越小,系统产生的空闲时间越多,本发明一方面可以利用空闲时间降低后续任务的速度,另一方面方法可以利用空闲时间关闭处理器的可能性增大,因此节能效果更明显。当AC/WCET等于1时,意味着系统中没有高优先级任务提前完成剩余的时间可以利用,因此三种方法消耗的能耗相差很小,但是由于本发明和DSTLPSA方法采用关键速度策略,因此相比DVSST方法获得更好的节能效果。
(3)DVSST和NonDVS方法,执行任务都是利用任务的最坏时间执行,因此他们的能耗消耗对AC/WCET变化不敏感,对于DVSST和NonDVS方法能耗消耗的多少来自任务的利用率而不是任务的负载。当任务负载AC/WCET=0.1,本发明(LP-DSAFST)相比DVSST和DSTLPSA方法可以分别节约38.02%和16.35%能耗。

Claims (6)

1.一种基于平衡因子的动态偶发任务低功耗调度方法,其特征在于,包括以下步骤:
步骤1:在t=0时刻,此时处理器以最小速度Smin运行;初始化所有0时刻到达处理器的任务Ti,并将任务Ti加入集合TDS;当集合TDS为空,此时系统以最小速度Smin运行;
步骤2:当任务Ti从TDS集合释放出来放入待执行集合TWS准备执行时,设置处理器速度增加到Ci/Pi,并根据EDF策略从待执行集合TWS中选择将要执行的任务;所述待执行集合TWS为集合TDS的子集;
步骤3:当要执行所选择的任务时,检测处理器当前速度;如果处理器当前速度低于关键速度Scrit,则使用平衡因子方法判断采用关键速度策略或传统DVS调度策略来重新设置处理器速度;如果处理器当前速度不低于关键速度Scrit,处理器按当前速度执行;
步骤4:当开始执行某项任务时,执行任务剩余时间W不断减少,当W=0时,该任务执行完成,则根据任务的真实执行时间ACi更新处理器当前速度为ACi/Pi;如果此时待执行集合TWS≠Φ,后续任务被激活,则使用平衡因子方法判断采用关键速度策略或传统DVS调度策略来重新设置处理器速度;
步骤5:当任务Ti的当前执行时间超过任务最后截止期限,即:t≥Ri+Pi,则设置处理器速度减少到Ci/Pi,把当前任务Ti加入集合TDS返回步骤1;
步骤6:如果任务执行完成,TWS=Φ,没有新任务被激活,计算空闲时间tidle;如果tidle≥t0,则关闭处理器,进入休眠状态;如果tidle<t0,设置处理器速度为S=Smin运行;所述
Figure FDA0002359250730000011
其中,Ri表示任务Ti的就绪时间,Pi是任务Ti的周期,t为任务Ti的当前执行时间;Ci是任务Ti最坏情况下的执行时间,Eo为处理器从空闲状态进入休眠状态的能耗开销,Pidle为处理器处于空闲状态的能耗。
2.根据权利要求1所述的一种基于平衡因子的动态偶发任务低功耗调度方法,其特征在于,所述EDF策略为根据任务的截止时间动态分配任务的优先级;截止时间越短,优先级越高。
3.根据权利要求1所述的一种基于平衡因子的动态偶发任务低功耗调度方法,其特征在于,所述关键速度策略为:处理器能耗最小时对应的速度为关键速度。
4.根据权利要求3所述的一种基于平衡因子的动态偶发任务低功耗调度方法,其特征在于,所述处理器能耗、关键速度计算如下:
在给定闭区间[ts,te]内,任务Ti=(Ri,Ci,Pi),假设处理器状态转换开销为E0,则处理器能耗为:
P(s)=(α·S3+Pind)·C/S+E0
P(s)为关于参数s的凸函数,对公式进行求导
Figure FDA0002359250730000021
得到处理器能耗最小值时的根
Figure FDA0002359250730000022
即,关键速度
Figure FDA0002359250730000023
其中,α为负载电容,Pind为与处理器速度无关的设备所消耗的功耗,C为任务Ti的执行周期,Eo为处理器从空闲状态进入休眠状态的能耗开销。
5.根据权利要求1所述的一种基于平衡因子的动态偶发任务低功耗调度方法,其特征在于,所述传统DVS调度策略为:
在给定闭区间[ts,te]内,任务Ti=(Ri,Ci,Pi),处理器能耗为:
E(s)=(α·S3+Pind)·C/S+(te-ts-C/S)·Pind=α·C·S2+(te-ts)·Pind
E(S)是关于S的单调递增函数,如果S>0,速度S越低则能耗越小;并且,传统DVS调度策略的处理器速度为C/(te-ts);
其中,α为负载电容,Pind为与处理器速度无关的设备所消耗的功耗,C为任务Ti的执行周期,Eo为处理器从空闲状态进入休眠状态的能耗开销。
6.根据权利要求1所述的一种基于平衡因子的动态偶发任务低功耗调度方法,其特征在于,所述使用平衡因子方法判断采用关键速度策略或传统DVS调度策略来设置处理器速度具体为:按照平衡因子C0设置处理器速度;使得处理器在闭区间内的能耗最小;
在区间[0,Scrit·(te-tS))内,对当前任务Ti的执行周期C小于Scrit×(te-tS);
将按照关键速度策略计算的处理器能耗P(s)与传统DVS调度策略计算的处理器能耗E(s)作差:
Figure FDA0002359250730000031
通过变换得到:
Figure FDA0002359250730000032
通过求导得到平衡因子
Figure FDA0002359250730000033
如果C≤C0,则E(s)≥P(s),选择按照处理器能耗小的关键速度策略来设置处理器速度,即设置处理器速度为关键速度
Figure FDA0002359250730000034
来执行任务;如果C>C0,则E(s)<P(s),选择按照处理器能耗小的传统DVS调度策略来设置处理器速度,即设置处理器速度为C/(te-ts)来执行任务;
其中,α为负载电容,Pind为与处理器速度无关的设备所消耗的功耗,Eo为处理器从空闲状态进入休眠状态的能耗开销;Scrit为关键速度,ts和te分别为闭区间[ts,te]的端点值。
CN201510856003.XA 2015-11-27 2015-11-27 一种基于平衡因子的动态偶发任务低功耗调度方法 Active CN106815073B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510856003.XA CN106815073B (zh) 2015-11-27 2015-11-27 一种基于平衡因子的动态偶发任务低功耗调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510856003.XA CN106815073B (zh) 2015-11-27 2015-11-27 一种基于平衡因子的动态偶发任务低功耗调度方法

Publications (2)

Publication Number Publication Date
CN106815073A CN106815073A (zh) 2017-06-09
CN106815073B true CN106815073B (zh) 2020-04-28

Family

ID=59156271

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510856003.XA Active CN106815073B (zh) 2015-11-27 2015-11-27 一种基于平衡因子的动态偶发任务低功耗调度方法

Country Status (1)

Country Link
CN (1) CN106815073B (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8910169B2 (en) * 2008-09-30 2014-12-09 Intel Corporation Methods and systems to perform a computer task in a reduced power consumption state
CN103810043B (zh) * 2012-11-09 2016-09-07 中国科学院沈阳计算技术研究所有限公司 一种适用于数控系统周期任务的节能调度方法
CN104424017B (zh) * 2013-08-21 2017-06-30 中国科学院沈阳计算技术研究所有限公司 一种适用于数控系统的容错低功耗调度方法
CN103957261A (zh) * 2014-05-06 2014-07-30 湖南体运通信息技术有限公司 一种基于能耗优化的云计算资源分配的方法

Also Published As

Publication number Publication date
CN106815073A (zh) 2017-06-09

Similar Documents

Publication Publication Date Title
CN103823718B (zh) 一种面向绿色云计算的资源配置方法
Huang et al. Applying real-time interface and calculus for dynamic power management in hard real-time systems
CN106970835B (zh) 固定优先级资源受限系统层次能耗优化方法
WO2008016791A1 (en) System and method for controlling processor low power states
CN109324880A (zh) 一种适用于实时系统周期任务模型的低功耗调度方法
Huang et al. Adaptive dynamic power management for hard real-time systems
CN109324891A (zh) 一种比例空闲时间分配的周期任务低功耗调度方法
Li et al. Energy-efficient scheduling in nonpreemptive systems with real-time constraints
CN109739332B (zh) 一种多任务通用能耗优化方法
CN109597378B (zh) 一种资源受限混合任务能耗感知方法
US20160291672A1 (en) Preformance state aware thread scheduling
Kessaci et al. Parallel evolutionary algorithms for energy aware scheduling
Devadas et al. Real-time dynamic power management through device forbidden regions
CN113535356B (zh) 一种能量感知的分层任务调度方法和装置
CN101833366B (zh) 一种机群作业管理系统中低功耗的动态结点控制方法
Jin et al. A virtual machine scheduling strategy with a speed switch and a multi-sleep mode in cloud data centers
CN106815073B (zh) 一种基于平衡因子的动态偶发任务低功耗调度方法
CN112130992A (zh) 基于高性能开放式数控系统的低功耗调度方法
CN105677449B (zh) 一种适用于数控系统的低功耗调度方法
WO2016058149A1 (zh) 一种预测处理器利用率的方法、处理装置和终端设备
Wan et al. Key technology of embedded system implementation for software-based CNC system
CN106933325B (zh) 一种固定优先级io设备能耗管理方法
CN111078401A (zh) 一种周期任务温度感知能耗优化方法
Abbas et al. A real-time feedback scheduler based on control error for environmental energy harvesting systems
CN110196756B (zh) 一种支持能耗优化的虚拟机模式转移方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: Nanping Road in Dongling District of Shenyang city of Liaoning Province, No. 110168 16-2

Patentee after: Shenyang Zhongke CNC Technology Co.,Ltd.

Address before: Nanping Road in Dongling District of Shenyang city of Liaoning Province, No. 110168 16-2

Patentee before: SHENYANG GOLDING NC & INTELLIGENCE TECH. Co.,Ltd.

CP01 Change in the name or title of a patent holder