CN112130992A - 基于高性能开放式数控系统的低功耗调度方法 - Google Patents

基于高性能开放式数控系统的低功耗调度方法 Download PDF

Info

Publication number
CN112130992A
CN112130992A CN202010912789.3A CN202010912789A CN112130992A CN 112130992 A CN112130992 A CN 112130992A CN 202010912789 A CN202010912789 A CN 202010912789A CN 112130992 A CN112130992 A CN 112130992A
Authority
CN
China
Prior art keywords
task
time
cpu
idle
speed
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
Application number
CN202010912789.3A
Other languages
English (en)
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.)
Harbin University
Original Assignee
Harbin University
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 Harbin University filed Critical Harbin University
Priority to CN202010912789.3A priority Critical patent/CN112130992A/zh
Publication of CN112130992A publication Critical patent/CN112130992A/zh
Pending legal-status Critical Current

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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3243Power saving in microcontroller unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • 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
    • 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/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • 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)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Abstract

本发明涉及一种基于高性能开放式数控系统的低功耗调度方法。现有的实时任务节能调度方法,并未考虑到偶发性周期任务的特点和CPU加速时所消耗的时间和能量,在进行处理器速度调节的过程中可能会出现额外的能量损耗,使系统整体功耗上升。本一种满足高性能开放式数控系统实时性条件下的低功耗调度方法,在任务集调度之前,首先建立忙等待线程,计算CPU在空闲状态下的功耗以及任务集内各子集的执行速度。然后在保证系统实时性的前提下,通过门限条件判断任务是否能进入任务准备队列,并重新计算任务执行速度,通过将其与系统许用最小运行速度进行比较,得出CPU运行速度最优解。本发明应用于数控领域。

Description

基于高性能开放式数控系统的低功耗调度方法
技术领域:
本发明涉及一种基于高性能开放式数控系统的低功耗调度方法。
背景技术:
随着《中国制造“2025”》的推行,数控系统正向具有更好的灵活性、适应性、多功能性的开放式智能数控系统转变。开放式数控系统在各种功能强大的智能算法支持下,其功耗也日渐凸显,系统功耗的增加会降低系统稳定性,这对截止时间有严格约束的开放式数控系统是不利的。因此,保证开放式数控系统性能的前提下,能够有效降低功耗的实时调度算法是十分必要的。
技术可以保证实时任务不错过截止期限的前提下,利用空闲时间调节处理器的运行速度减低系统的动态功耗达到节能的目的。采用动态电源管理(DPM)技术,可以使处于空闲状态下的CPU进入休眠状态降低系统静态功耗,从而进一步减少系统功耗。
现有的实时任务节能调度方法,并未考虑到偶发性周期任务的特点和CPU加速时所消耗的时间和能量,在进行处理器速度调节的过程中可能会出现额外的能量损耗,使系统整体功耗上升。与此同时,当系统进入空闲状态后,由于缺少明确的时间-能量判定条件,导致无法有效的减少系统产生的静态功耗。
发明内容:
本发明的目的是提供一种基于高性能开放式数控系统的低功耗调度方法。
上述的目的通过以下的技术方案实现:
一种基于高性能开放式数控系统的低功耗调度方法,包括以下步骤:
步骤1:在系统任务开始之前,建立忙等待线程System Idle(wait),计算任务集的总利用率Ut和处理器许用最小运行速度Smin;所述任务集为T(T1, T2,...,Ti...,Tn),共包含n个周期任务;
设置任务准备队列、任务完成队列;所述任务完成队列包含已准备就绪任务集合RT(Ti,t),其中Ti表示第i个周期任务,t表示该任务最坏运行时间,与此同时,准备队列按照任务优先级进行降序排列;所述任务完成队列包含已经运行完毕的任务集合FT(Tfi,tf),其中Tfi表示已经完成的第i个周期任务,tf表示任务实际完成时间;
步骤2:当偶发性周期任务To(po,to)在t时刻到达时,所述的偶发性周期任务是指开放式数控系统中由所搭载的智能算法模块产生的控制任务,其中po是To的周期,to为任务最坏执行时间;
当满足门限条件时,根据最早截止期限EDF优先顺序将偶发性周期任务插入任务准备队列当中。
步骤3:偶发性周期任务To(po,to)在t时刻调度执行,重新计算To在t时刻的可利用时间left’(t),并基于此重新计算To的执行速度Se
当Se<Smin时,则采用Smin作为运行速度;
当Smax>Se>Smin时,则判断采用Smax作为执行速度或仍保持Se作为执行速度;
步骤4:当任务完成时,如果没有其他新任务到达,计算CPU空闲时间tidle,根据CPU休眠判断条件对空闲状态下CPU状态进行切换;
若满足,则采用DPM技术将CPU置于休眠状态;
反之,CPU以空闲状态运行,直到新任务到来。
所述的基于高性能开放式数控系统的低功耗调度方法,所述步骤2中的门限条件:t o≤left(t)-其中,left(t)为t时刻任务可利用执行时间,tmax(i)为CPU处于最高速状态下的任务运行时间,tɑ为CPU加速时间;
其中tmax(i)的计算公式为:,tɑ的计算公式为:,Cf是动态电压电压转换器DVS的负载,Imax是动态电压转换器的最大输出电流。
所述基于高性能开放式数控系统的低功耗调度方法,所述步骤3中重新计算To的执行速度Se,包括:
假定偶发性周期任务在执行期间不会被其他任务抢占,当产生偶发性周期任务To时,则可能出现两种情况:若偶发性周期任务替换
Figure 100002_1
原准备队列当中任务,此时CPU的总利用率,其中C0为偶发性周期任务在S0速度下的最差运行时间,则此时CPU的执行速度为Se=S0;若偶发性周期任务为准备队列的新子集,则执行速度
所述基于高性能开放式数控系统的低功耗调度方法,所述步骤3中的当Smax>Se>Smin时,判断采用Smax作为执行速度或仍保持Se作为执行速度,包括:
假定系统在进行任务调度的过程中静态功耗保持不变,系统在加速过程中所产生的额外耗能,其中u表示DVS的切换功率,Cf表示DVS的负载,系统空闲状态下的额外耗能,置判别函数由于判别函数为单调函数,故当F(tɑ)>0时,则采用Se作为执行速度;反之,则采用Smax作为执行速度。
根据权利要求4所述基于高性能开放式数控系统的低功耗调度方法,其特征是:CPU休眠判断条件,包括:
假设不考虑系统漏电对于系统的影响,CPU在空闲与休眠之间切换所需要的能量Eon为:,其中;系统处于空闲状态静态功耗E S=U c * I c*(t idle+n*P t),其中Uc,Ic为CPU处于空闲状态下所对应电压、电流,tidle为一个周期内任务提早完成所剩下的空闲时间,n为间隔第n个周期有新任务到来;由于Eon与ES均为单调函数,故当空闲状态静态功耗小于CPU在空闲与休眠之间切换所需要的能量,则系统进入休眠状态;反之,则系统保持空闲状态直至新任务到来。
本发明的有益效果:
1.本发明采用本发明方法,在充分利用系统的空闲时间基础上,引入门限条件保证系统实时性,考虑CPU运行速度变化率对任务执行速度的影响,得出CPU运行速度最优解从而降低处理器运行速度,比现有的低功耗调度方法平均减少15.3%能耗。
本发明采用本发明方法,在保证任务集任务可调度性的前提下,考虑CPU状态转换功耗与空闲功耗之间的关系,合理的将处理器置于不同的工作状态,达到减少功耗的目的,经验证当系统处于低负载时,比现有的低功耗调度方法平均减少6.2%的功耗。
附图说明:
图1为本发明方法的步骤流程图;
图2为本发明中的变化对能耗影响的仿真实验结果图;
图3为本发明中负载的变化对能耗影响的仿真实验结果图;
具体实施方式:
实施例1:
参考附图1,低功耗调度方法分为三个阶段:离线阶段、任务执行阶段、系统空闲阶段,针对高性能数控系统会产生偶发性周期任务的特点,实现不同阶段的低功耗调度。偶发性周期任务是实时任务的一种,在高性能数控系统当中经常由搭载智能算法的模块产生,其特点与周期性任务相似,即两个连续任务实例的释放间隔为固定的常数,区别在于偶发性周期任务会存在一定的生命周期,任务存活期间具备周期任务的特征,生命周期结束后与偶发性任务类似;
在t=0时刻,根据系统时钟周期Pc建立忙等待线程System Idle(wait),得出当前状态下的系统功耗为Ps=Uc*Ic,其中Uc、Ic为CPU处于空闲状态下所对应的的电压与电流。
周期任务集开始调度之前,计算周期任务的总利用率,处理器许用最小运行速度S min为,其中t为任务Ti的最坏执行时间。
实施例2:
在实时调度器上分别设置两个队列:任务完成队列(done queue)表示任务集当中已经完成任务的集合,用集合FT(Tfi,tf)表示;任务准备队列(ready queue)包含已经准备就绪但是还未被调度的任务集合,用集合RT(Ti,t)表示。
在t时刻偶发性周期任务To(po,to)到来,根据门限条件,当t o≤left(t)-时,则根据最早截止期限优先原则插入就绪任务队列当中。
当偶发性周期任务T op ot o)在t时刻就绪,偶发性周期任务替换原准备队列当中任务,且此时CPU的总利用率,则此时CPU的执行速度为Se=S0
若偶发性周期任务为准备队列的新子集,则执行速度。
一个完整的时钟周期应该由以下三部分组成:任务完成队列中各任务的实际消耗时间之和、优先级在To(po,to)之后,任务就绪队列当中所有任务最坏执行时间之和以及剩余时间left’(t);计算。
计算任务To的执行速度Se=t0/left’(t); 当Se<Smin时,则采用Smin作为运行速度;当Smax>Se>Smin时,假定系统在进行任务调度的过程中静态功耗保持不变,计算加速过程中所产生的额外耗能;计算系统空闲状态下的额外耗能。
:置判别函数;判别函数F(tɑ)是关于参数的单调函数,当F(tɑ)>0时,则采用Se作为执行速度;反之,则采用Smax作为执行速度;
判断处理器空闲后是否切换至休眠状态。处理器由休眠状态进入到工作状态所需要的能耗表示为,系统空闲时间,系统处于空闲状态静态功耗E S=U c * I c*(t idle+n*P t),当n=0时,即在下一个周期会有新任务到达,则此时系统空闲时间t idle≥,则系统进入休眠状态。
当时,则系统处于空闲状态;反之,系统进入休眠状态。
实施例3:
图2为本发明中任务平均实际执行时间与时钟周期Pt之比对能耗影响的仿真实验结果图。对比算法为现有的LA-EDF算法、DVSST算法和DSTLPSA算法。横坐标为,纵坐标为归一化后的能耗。当在时钟周期内所占的比例逐渐增大,任务集的平均空闲时间就会减少,以上算法的能耗都会逐渐上升。可以看出本发明提出的算法性能始终优于其他算法,经计算可知本算法比其他算法平均节约15%左右能耗。
图3为本发明中系统利用率变化对能耗影响的仿真实验结果图。对比算法为现有的LA-EDF算法、DVSST算法和DSTLPSA算法。横坐标为系统负载,纵坐标为归一化后的能耗。当系统处于低负载的情况时,由于本发明算法考虑到CPU运行速度变化率与CPU状态转换-空闲功耗之间的关系,在该情形下选择性的使CPU进入休眠状态或空闲状态,在能耗上比其他算法消耗少6.2%。随着利用率的增加,合理选择执行速度最优解的本发明算法在很多时间段上效果明显,较其他算法平均节省10.2%能耗。当利用率接近1时,为保证任务能够在截止时间内完成,所有任务执行速度基本相同,故能耗消耗也类似。

Claims (5)

1.一种基于高性能开放式数控系统的低功耗调度方法,其特征是:包括以下步骤:
步骤1:在系统任务开始之前,建立忙等待线程System Idle(wait),计算任务集的总利用率Ut和处理器许用最小运行速度Smin;所述任务集为T(T1, T2,...,Ti...,Tn),共包含n个周期任务;
设置任务准备队列、任务完成队列;所述任务完成队列包含已准备就绪任务集合RT(Ti,t),其中Ti表示第i个周期任务,t表示该任务最坏运行时间,与此同时,准备队列按照任务优先级进行降序排列;所述任务完成队列包含已经运行完毕的任务集合FT(Tfi,tf),其中Tfi表示已经完成的第i个周期任务,tf表示任务实际完成时间;
步骤2:当偶发性周期任务To(po,to)在t时刻到达时,所述的偶发性周期任务是指开放式数控系统中由所搭载的智能算法模块产生的控制任务,其中po是To的周期,to为任务最坏执行时间;
当满足门限条件时,根据最早截止期限EDF优先顺序将偶发性周期任务插入任务准备队列当中。
步骤3:偶发性周期任务To(po,to)在t时刻调度执行,重新计算To在t时刻的可利用时间left’(t),并基于此重新计算To的执行速度Se
当Se<Smin时,则采用Smin作为运行速度;
当Smax>Se>Smin时,则判断采用Smax作为执行速度或仍保持Se作为执行速度;
步骤4:当任务完成时,如果没有其他新任务到达,计算CPU空闲时间tidle,根据CPU休眠判断条件对空闲状态下CPU状态进行切换;
若满足,则采用DPM技术将CPU置于休眠状态;
反之,CPU以空闲状态运行,直到新任务到来。
2.根据权利要求1所述的基于高性能开放式数控系统的低功耗调度方法,其特征是,所述步骤2中的门限条件:t o≤left(t)-其中,left(t)为t时刻任务可利用执行时间,tmax(i)为CPU处于最高速状态下的任务运行时间,tɑ为CPU加速时间;
其中tmax(i)的计算公式为:,tɑ的计算公式为:,Cf是动态电压电压转换器DVS的负载,Imax是动态电压转换器的最大输出电流。
3.根据权利要求2所述基于高性能开放式数控系统的低功耗调度方法,其特征是,所述步骤3中重新计算To的执行速度Se,包括:
假定偶发性周期任务在执行期间不会被其他任务抢占,当产生偶发性周期任务To时,则可能出现两种情况:若偶发性周期任务替换原准备队列当中任务,此时CPU的总利用率,其中C0为偶发性周期任务在S0速度下的最差运行时间,则此时CPU的执行速度为Se=S0;若偶发性周期任务为准备队列的新子集,则执行速度.
Figure 1
4.根据权利要求3所述基于高性能开放式数控系统的低功耗调度方法,其特征是,所述步骤3中的当Smax>Se>Smin时,判断采用Smax作为执行速度或仍保持Se作为执行速度,包括:
假定系统在进行任务调度的过程中静态功耗保持不变,系统在加速过程中所产生的额外耗能,其中u表示DVS的切换功率,Cf表示DVS的负载,系统空闲状态下的额外耗能,置判别函数由于判别函数为单调函数,故当F(tɑ)>0时,则采用Se作为执行速度;反之,则采用Smax作为执行速度。
5.根据权利要求4所述基于高性能开放式数控系统的低功耗调度方法,其特征是:CPU休眠判断条件,包括:
假设不考虑系统漏电对于系统的影响,CPU在空闲与休眠之间切换所需要的能量Eon为:,其中;系统处于空闲状态静态功耗E S=U c * I c*(t idle+n*P t),其中Uc,Ic为CPU处于空闲状态下所对应电压、电流,tidle为一个周期内任务提早完成所剩下的空闲时间,n为间隔第n个周期有新任务到来;由于Eon与ES均为单调函数,故当空闲状态静态功耗小于CPU在空闲与休眠之间切换所需要的能量,则系统进入休眠状态;反之,则系统保持空闲状态直至新任务到来。
CN202010912789.3A 2020-09-03 2020-09-03 基于高性能开放式数控系统的低功耗调度方法 Pending CN112130992A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010912789.3A CN112130992A (zh) 2020-09-03 2020-09-03 基于高性能开放式数控系统的低功耗调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010912789.3A CN112130992A (zh) 2020-09-03 2020-09-03 基于高性能开放式数控系统的低功耗调度方法

Publications (1)

Publication Number Publication Date
CN112130992A true CN112130992A (zh) 2020-12-25

Family

ID=73848201

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010912789.3A Pending CN112130992A (zh) 2020-09-03 2020-09-03 基于高性能开放式数控系统的低功耗调度方法

Country Status (1)

Country Link
CN (1) CN112130992A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114816031A (zh) * 2022-05-09 2022-07-29 海信电子科技(深圳)有限公司 终端设备的省电方法、终端设备及介质
CN114928644A (zh) * 2022-07-20 2022-08-19 深圳市安科讯实业有限公司 一种物联网网络融合加速网关

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114816031A (zh) * 2022-05-09 2022-07-29 海信电子科技(深圳)有限公司 终端设备的省电方法、终端设备及介质
CN114816031B (zh) * 2022-05-09 2023-10-13 海信电子科技(深圳)有限公司 终端设备的省电方法、终端设备及介质
CN114928644A (zh) * 2022-07-20 2022-08-19 深圳市安科讯实业有限公司 一种物联网网络融合加速网关

Similar Documents

Publication Publication Date Title
CN101339521B (zh) 一种任务优先级动态调度算法
CN112130992A (zh) 基于高性能开放式数控系统的低功耗调度方法
CN109739332B (zh) 一种多任务通用能耗优化方法
CN109324880A (zh) 一种适用于实时系统周期任务模型的低功耗调度方法
CN106970835B (zh) 固定优先级资源受限系统层次能耗优化方法
CN109324891A (zh) 一种比例空闲时间分配的周期任务低功耗调度方法
CN1945498A (zh) 面向嵌入式系统低功耗实时任务参数模型调度方法
CN109597378B (zh) 一种资源受限混合任务能耗感知方法
CN107391244A (zh) 一种基于混合调度模型的物联网操作系统调度方法
KR20090120970A (ko) 인터럽트 스케줄링 방법
CN113535356B (zh) 一种能量感知的分层任务调度方法和装置
CN105630126A (zh) 一种基于常带宽服务器混合任务低功耗调度方法
CN101943944B (zh) 一种基于空闲历史信息的计算阵列节能方法
CN115686863A (zh) 一种混合轮询方法、装置、设备及可读存储介质
CN106933325B (zh) 一种固定优先级io设备能耗管理方法
CN105677449B (zh) 一种适用于数控系统的低功耗调度方法
CN105706022B (zh) 一种预测处理器利用率的方法、处理装置和终端设备
CN106815073B (zh) 一种基于平衡因子的动态偶发任务低功耗调度方法
CN111324197B (zh) 一种基于三速度周期任务的降低系统能耗的方法
Salhiene et al. Dynamic voltage scheduling for real time asynchronous systems
CN116204290A (zh) 一种基于edf调度策略的仪表任务执行方法
Deng et al. A dynamic power management algorithm for sporadic tasks in real-time embedded systems
CN111078401A (zh) 一种周期任务温度感知能耗优化方法
CN110196756B (zh) 一种支持能耗优化的虚拟机模式转移方法
TWI831611B (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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20201225