Energy-aware Scheduling for Multiprocessor Real-time Systems

Modern real-time applications have become more sophisticated and complex in their behaviour over the time. Contemporaneously, multiprocessor architectures have emerged. Multiprocessor systems, due to their autonomy and reliability, face critical problem of energy consumption. To address this issue in real-time systems, many software-based approaches have emerged. This thesis proposes new techniques for energy-efficient scheduling of multiprocessor systems. Our first contribution is a hierarchical scheduling algorithm that allows restricted migration of tasks. This algorithm aims at reducing the sub-optimality of global EDF algorithm. The second contribution of this thesis is a dynamic power management technique called Assertive Dynamic Power Management (AsDPM). This technique is an admission control technique for real-time tasks, which decides when exactly a ready task shall execute, thereby reducing the number of active processors. The third contribution of this dissertation is a DVFS technique, referred as Deterministic Strech-to-Fit (DSF) technique, which falls in the category of inter-task DVFS techniques. Both DPM and DVFS techniques are efficient for specific operating conditions. However, they often outperform each other when these conditions change. Our fourth and final contribution is a generic power / energy management scheme, called Hybrid Power Management (HyPowMan) scheme. This scheme, instead of designing new power / energy management techniques for specific operating conditions, takes a set of well-known existing policies. At runtime, the best-performing policy for given workload is adapted by HyPowMan scheme through machine-learning approach.

[1]  Nathan Fisher,et al.  The multiprocessor real-time scheduling of general task systems , 2007 .

[2]  Vinay Devadas,et al.  Real-Time Dynamic Power Management through Device Forbidden Regions , 2008, 2008 IEEE Real-Time and Embedded Technology and Applications Symposium.

[3]  Daniel Moss,et al.  Compiler-assisted dynamic power-aware scheduling for real-time applications , 2000 .

[4]  Luca Benini,et al.  Dynamic voltage scaling and power management for portable systems , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[5]  Sanjoy K. Baruah,et al.  Energy-efficient synthesis of periodic task systems upon identical multiprocessor platforms , 2004, 24th International Conference on Distributed Computing Systems, 2004. Proceedings..

[6]  David Atienza,et al.  3D-ICE: Fast compact transient thermal modeling for 3D ICs with inter-tier liquid cooling , 2010, 2010 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[7]  Xiliang Zhong,et al.  System-wide energy minimization for real-time tasks: Lower bound and approximation , 2008, ACM Trans. Embed. Comput. Syst..

[8]  Seongsoo Lee,et al.  Run-time voltage hopping for low-power real-time systems , 2000, DAC.

[9]  Mani B. Srivastava,et al.  Predictive system shutdown and other architectural techniques for energy efficient programmable computation , 1996, IEEE Trans. Very Large Scale Integr. Syst..

[10]  Hakan Aydin,et al.  Energy-aware task allocation for rate monotonic scheduling , 2005, 11th IEEE Real Time and Embedded Technology and Applications Symposium.

[11]  Cécile Belleudy,et al.  An inter-task real time DVFS scheme for multiprocessor embedded systems , 2010, 2010 Conference on Design and Architectures for Signal and Image Processing (DASIP).

[12]  Cécile Belleudy,et al.  A framework for offline optimization of energy consumption in real time multiprocessor system-on-chip , 2009, 2009 16th IEEE International Conference on Electronics, Circuits and Systems - (ICECS 2009).

[13]  Dragomir Milojevic,et al.  Energy-aware real-time scheduling in embedded multiprocessor systems , 2010 .

[14]  Mahmut T. Kandemir,et al.  DRAM energy management using software and hardware directed power mode control , 2001, Proceedings HPCA Seventh International Symposium on High-Performance Computer Architecture.

[15]  Hakan Aydin,et al.  Minimizing expected energy consumption through optimal integration of DVS and DPM , 2009, 2009 IEEE/ACM International Conference on Computer-Aided Design - Digest of Technical Papers.

[16]  Shinpei Kato,et al.  Portioned EDF-based scheduling on multiprocessors , 2008, EMSOFT '08.

[17]  Sandy Irani,et al.  Online strategies for dynamic power management in systems with multiple power-saving states , 2003, TECS.

[18]  Youngsoo Shin,et al.  Power conscious fixed priority scheduling for hard real-time systems , 1999, Proceedings 1999 Design Automation Conference (Cat. No. 99CH36361).

[19]  Flavius Gruian,et al.  System-Level Design Methods for Low-Energy Architectures Containing Variable Voltage Processors , 2000, PACS.

[20]  Chaitali Chakrabarti,et al.  Energy management of DVS-DPM enabled embedded systems powered by fuel cell-battery hybrid source , 2007, Proceedings of the 2007 international symposium on Low power electronics and design (ISLPED '07).

[21]  Sandy Irani,et al.  Competitive analysis of dynamic power management strategies for systems with multiple power saving states , 2002, Proceedings 2002 Design, Automation and Test in Europe Conference and Exhibition.

[22]  Taewhan Kim,et al.  Profile-based optimal intra-task voltage scheduling for hard real-time applications , 2004, Proceedings. 41st Design Automation Conference, 2004..

[23]  Taewhan Kim,et al.  Optimal voltage allocation techniques for dynamically variable voltage processors , 2003, DAC '03.

[24]  Rami G. Melhem,et al.  Power aware scheduling for AND/OR graphs in multiprocessor real-time systems , 2002, Proceedings International Conference on Parallel Processing.

[25]  Sandy Irani,et al.  Latency effects of system level power management algorithms , 2000, IEEE/ACM International Conference on Computer Aided Design. ICCAD - 2000. IEEE/ACM Digest of Technical Papers (Cat. No.00CH37140).

[26]  Sanjoy Baruah,et al.  Edf scheduling on heterogeneous multiprocessors , 2004 .

[27]  Flavius Gruian,et al.  Energy-Centric Scheduling for Real-Time Systems , 2002 .

[28]  Shinpei Kato,et al.  Semi-partitioned Scheduling of Sporadic Task Systems on Multiprocessors , 2009, 2009 21st Euromicro Conference on Real-Time Systems.

[29]  Giorgio C. Buttazzo,et al.  Rate Monotonic Analysis: The Hyperbolic Bound , 2003, IEEE Trans. Computers.

[30]  Sanjoy K. Baruah,et al.  Preemptively scheduling hard-real-time sporadic tasks on one processor , 1990, [1990] Proceedings 11th Real-Time Systems Symposium.

[31]  S. Sitharama Iyengar,et al.  Dynamic I/O power management for hard real-time systems , 2001, Ninth International Symposium on Hardware/Software Codesign. CODES 2001 (IEEE Cat. No.01TH8571).

[32]  Rajesh K. Gupta,et al.  Leakage aware dynamic voltage scaling for real-time embedded systems , 2004, Proceedings. 41st Design Automation Conference, 2004..

[33]  Michael L. Dertouzos,et al.  MULTIPROCESSOR SCHEDULING IN A HARD REAL-TIME ENVIRONMENT. , 2017 .

[34]  ParkMinkyu,et al.  Comparison of Deadline-Based Scheduling Algorithms for Periodic Real-Time Tasks on Multiprocessor*This work is supported in part by Brain Korea 21 project and in part by ICT. , 2005 .

[35]  Damien Hardy,et al.  Estimation of Cache Related Migration Delays for Multi-Core Processors with Shared Instruction Caches , 2009 .

[36]  Soonhoi Ha,et al.  Hybrid Run-time Power Management Technique for Real-time Embedded System with Voltage Scalable Processor , 2001, LCTES/OM.

[37]  Binoy Ravindran,et al.  An Optimal Real-Time Scheduling Algorithm for Multiprocessors , 2006, 2006 27th IEEE International Real-Time Systems Symposium (RTSS'06).

[38]  Mahmut T. Kandemir,et al.  Improving Off-Chip Memory Energy Behavior in a Multi-processor, Multi-bank Environment , 2001, LCPC.

[39]  Dongkun Shin,et al.  Optimizing intra-task voltage scheduling using data flow analysis , 2005, ASP-DAC.

[40]  James H. Anderson,et al.  Multiprocessor real-time scheduling , 2011, J. Syst. Archit..

[41]  Cécile Belleudy,et al.  Assertive Dynamic Power Management (AsDPM) Strategy for Globally Scheduled RT Multiprocessor Systems , 2009, PATMOS.

[42]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[43]  James H. Anderson,et al.  Mixed Pfair/ERfair scheduling of asynchronous periodic tasks , 2001, Proceedings 13th Euromicro Conference on Real-Time Systems.

[44]  Joseph Y.-T. Leung,et al.  Fair Scheduling of Real-Time Tasks on Multiprocessors , 2004 .

[45]  R. D. Valentine,et al.  The Intel Pentium M processor: Microarchitecture and performance , 2003 .

[46]  Alvin R. Lebeck,et al.  Power aware page allocation , 2000, SIGP.

[47]  Rami G. Melhem,et al.  Power-aware scheduling for periodic real-time tasks , 2004, IEEE Transactions on Computers.

[48]  Krishnendu Chakrabarty,et al.  Pruning-based, energy-optimal, deterministic I/O device scheduling for hard real-time systems , 2005, TECS.

[49]  G. Dhiman,et al.  Dynamic Power Management Using Machine Learning , 2006, 2006 IEEE/ACM International Conference on Computer Aided Design.

[50]  Sanjoy K. Baruah,et al.  Proportionate progress: a notion of fairness in resource allocation , 1993, STOC '93.

[51]  Weixun Wang,et al.  PreDVS: Preemptive dynamic voltage scaling for real-time systems using approximation scheme , 2010, Design Automation Conference.

[52]  Anna R. Karlin,et al.  Competitive randomized algorithms for non-uniform problems , 1990, SODA '90.

[53]  Kevin Skadron,et al.  Temperature-aware microarchitecture: Modeling and implementation , 2004, TACO.

[54]  Anne-Marie Déplanche,et al.  Simulation for multiprocessor real-time scheduling evaluation , 2010 .

[55]  Farooq Muhammad,et al.  Ordonnancement de tâches efficace et à complexité maîtrisée pour des systèmes temps-réel , 2009 .

[56]  Anne-Marie Déplanche,et al.  STORM a simulation tool for real-time multiprocessor scheduling evaluation , 2009, 2010 IEEE 15th Conference on Emerging Technologies & Factory Automation (ETFA 2010).

[57]  Sanjoy K. Baruah,et al.  Energy-aware Implementation of Hard-real-time Systems upon Multiprocessor Platforms , 2003, PDCS.

[58]  Chaitali Chakrabarti,et al.  System-level energy-efficient dynamic task scheduling , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[59]  Scott Shenker,et al.  Scheduling for reduced CPU energy , 1994, OSDI '94.

[60]  Luca Benini,et al.  A survey of design techniques for system-level dynamic power management , 2000, IEEE Trans. Very Large Scale Integr. Syst..

[61]  Mahmut T. Kandemir,et al.  Reducing memory energy consumption of embedded applications that process dynamically allocated data , 2006, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[62]  Bruno Gaujal,et al.  Ordonnancement temps réel et minimisation de la consommation d'énergie , 2006 .

[63]  Sandy Irani,et al.  Algorithmic problems in power management , 2005, SIGA.

[64]  Damien Hardy,et al.  Shared Data Cache Conflicts Reduction for WCET Computation in Multi-Core Architectures , 2010 .

[65]  Björn Andersson,et al.  Multiprocessor Scheduling with Few Preemptions , 2006, 12th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA'06).

[66]  Kang G. Shin,et al.  Real-time dynamic voltage scaling for low-power embedded operating systems , 2001, SOSP.

[67]  Yann-Hang Lee,et al.  Voltage-clock-scaling adaptive scheduling techniques for low power in hard real-time systems , 2000, Proceedings Sixth IEEE Real-Time Technology and Applications Symposium. RTAS 2000.

[68]  Krishnendu Chakrabarty,et al.  Energy-conscious, deterministic I/O device scheduling in hard real-time systems , 2003, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[69]  Luca Benini,et al.  Policy optimization for dynamic power management , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[70]  Kenji Funaoka,et al.  Energy-Efficient Optimal Real-Time Scheduling on Multiprocessors , 2008, 2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC).

[71]  Cécile Belleudy,et al.  Power Management in Real Time Embedded Systems through Online and Adaptive Interplay of DPM and DVFS Policies , 2010, 2010 IEEE/IFIP International Conference on Embedded and Ubiquitous Computing.

[72]  Yoav Freund,et al.  A decision-theoretic generalization of on-line learning and an application to boosting , 1995, EuroCOLT.

[73]  Luca Benini,et al.  Dynamic power management - design techniques and CAD tools , 1997 .

[74]  James H. Anderson,et al.  A Hybrid Real-Time Scheduling Approach for Large-Scale Multicore Platforms , 2007, 19th Euromicro Conference on Real-Time Systems (ECRTS'07).

[75]  Aloysius K. Mok Task Management Techniques for Enforcing ED Scheduling on Periodic Task Set , 1988 .

[76]  Kiyoung Choi,et al.  Power optimization of real-time embedded systems on variable speed processors , 2000, IEEE/ACM International Conference on Computer Aided Design. ICCAD - 2000. IEEE/ACM Digest of Technical Papers (Cat. No.00CH37140).

[77]  Qi Yang,et al.  Energy-aware partitioning for multiprocessor real-time systems , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[78]  Sridhar Srinivasan Journal Papers , 1999 .

[79]  Bruno Gaujal,et al.  Dynamic voltage scaling under EDF revisited , 2007, Real-Time Systems.

[80]  Rudy Lauwereins,et al.  Energy-Aware Runtime Scheduling for Embedded-Multiprocessor SOCs , 2001, IEEE Des. Test Comput..

[81]  Allen C.-H. Wu,et al.  A predictive system shutdown method for energy saving of event-driven computation , 1997, 1997 Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[82]  Cécile Belleudy,et al.  Two-level Hierarchical Scheduling Algorithm for Real-time Multiprocessor Systems , 2011, J. Softw..

[83]  Rami G. Melhem,et al.  Scheduling with Dynamic Voltage/Speed Adjustment Using Slack Reclamation in Multiprocessor Real-Time Systems , 2003, IEEE Trans. Parallel Distributed Syst..

[84]  Sandeep K. Shukla,et al.  A model checking approach to evaluating system level dynamic power management policies for embedded systems , 2001, Sixth IEEE International High-Level Design Validation and Test Workshop.

[85]  Joseph Y.-T. Leung,et al.  On-line scheduling of real-time tasks , 1988, Proceedings. Real-Time Systems Symposium.

[86]  James H. Anderson,et al.  Fair scheduling of dynamic task systems on multiprocessors , 2005, J. Syst. Softw..

[87]  Majid Sarrafzadeh,et al.  Memory Segmentation to Exploit Sleep Mode Operation , 1995, 32nd Design Automation Conference.

[88]  Frank Bellosa,et al.  Balancing power consumption in multiprocessor systems , 2006, EuroSys.

[89]  Jian Shu,et al.  A Hybrid Real-Time Scheduling Approach on Multi-Core Architectures , 2010, J. Softw..

[90]  Chin-Fu Kuo,et al.  Energy-Efficient Scheduling for Real-Time Systems on Dynamic Voltage Scaling (DVS) Platforms , 2007, 13th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA 2007).

[91]  Cécile Belleudy,et al.  Hybrid power management in real time embedded systems: an interplay of DVFS and DPM techniques , 2011, Real-Time Systems.

[92]  Maya Gokhale,et al.  A power-aware, satellite-based parallel signal processing scheme , 2002 .

[93]  Nicolas Ventroux,et al.  SCMP architecture: an asymmetric multiprocessor system-on-chip for dynamic applications , 2010, IFMT '10.

[94]  David Atienza,et al.  Energy-efficient variable-flow liquid cooling in 3D stacked architectures , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[95]  Kenji Funaoka,et al.  Dynamic voltage and frequency scaling for optimal real-time scheduling on multiprocessors , 2008, 2008 International Symposium on Industrial Embedded Systems.

[96]  Rajesh K. Gupta,et al.  Dynamic voltage scaling for systemwide energy minimization in real-time embedded systems , 2004, Proceedings of the 2004 International Symposium on Low Power Electronics and Design (IEEE Cat. No.04TH8758).

[97]  Gang Quan,et al.  Energy efficient DVS schedule for fixed-priority real-time systems , 2007, TECS.

[98]  Steve Goddard,et al.  Online energy-aware I/O device scheduling for hard real-time systems , 2006, Proceedings of the Design Automation & Test in Europe Conference.

[99]  F. Frances Yao,et al.  A scheduling model for reduced CPU energy , 1995, Proceedings of IEEE 36th Annual Foundations of Computer Science.

[100]  Mahmut T. Kandemir,et al.  Nonuniform banking for reducing memory energy consumption , 2005, Design, Automation and Test in Europe.

[101]  Jakob Engblom,et al.  The worst-case execution-time problem—overview of methods and survey of tools , 2008, TECS.

[102]  David S. Johnson,et al.  Near-optimal bin packing algorithms , 1973 .

[103]  Rolf Ernst,et al.  Embedded program timing analysis based on path clustering and architecture classification , 1997, 1997 Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[104]  Sanjoy K. Baruah,et al.  Static-priority scheduling on multiprocessors , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[105]  Luca Benini,et al.  Thermal Balancing Policy for Multiprocessor Stream Computing Platforms , 2009, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[106]  James H. Anderson,et al.  An EDF-based scheduling algorithm for multiprocessor soft real-time systems , 2005, 17th Euromicro Conference on Real-Time Systems (ECRTS'05).

[107]  Steve Goddard,et al.  SYS-EDF: a system-wide energy-efficient scheduling algorithm for hard real-time systems , 2009, Int. J. Embed. Syst..

[108]  Vinay Devadas,et al.  On the interplay of dynamic voltage scaling and dynamic power management in real-time embedded applications , 2008, EMSOFT '08.