CPU Energy-Aware Parallel Real-Time Scheduling

Both energy-efficiency and real-time performance are critical requirements in many embedded systems applications such as self-driving car, robotic system, disaster response, and security/safety control. These systems entail a myriad of real-time tasks, where each task itself is a parallel task that can utilize multiple computing units at the same time. Driven by the increasing demand for parallel tasks, multi-core embedded processors are inevitably evolving to many-core. Existing work on real-time parallel tasks mostly focused on real-time scheduling without addressing energy consumption. In this paper, we address hard real-time scheduling of parallel tasks while minimizing their CPU energy consumption on multicore embedded systems. Each task is represented as a directed acyclic graph (DAG) with nodes indicating different threads of execution and edges indicating their dependencies. Our technique is to determine the execution speeds of the nodes of the DAGs to minimize the overall energy consumption while meeting all task deadlines. It incorporates a frequency optimization engine and the dynamic voltage and frequency scaling (DVFS) scheme into the classical real-time scheduling policies (both federated and global) and makes them energy-aware. The contributions of this paper thus include the first energy-aware online federated scheduling and also the first energy-aware global scheduling of DAGs. Evaluation using synthetic workload through simulation shows that our energy-aware real-time scheduling policies can achieve up to 68% energy-saving compared to classical (energy-unaware) policies. We have also performed a proof of concept system evaluation using physical hardware demonstrating the energy efficiency through our proposed approach. 2012 ACM Subject Classification Computer systems organization → Real-time system specification

[1]  Tei-Wei Kuo,et al.  Leakage-Aware Energy-Efficient Scheduling of Real-Time Tasks in Multiprocessor Systems , 2006, 12th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'06).

[2]  Chenyang Lu,et al.  Outstanding Paper Award: Analysis of Global EDF for Parallel Tasks , 2013, 2013 25th Euromicro Conference on Real-Time Systems.

[3]  Vinay Devadas,et al.  Coordinated power management of periodic real-time tasks on chip multiprocessors , 2010, International Conference on Green Computing.

[4]  Yixin Chen,et al.  Extended duality for nonlinear programming , 2010, Comput. Optim. Appl..

[5]  Rajesh K. Gupta,et al.  Energy aware non-preemptive scheduling for hard real-time systems , 2005, 17th Euromicro Conference on Real-Time Systems (ECRTS'05).

[6]  Sanjoy K. Baruah,et al.  A Generalized Parallel Task Model for Recurrent Real-time Processes , 2012, 2012 IEEE 33rd Real-Time Systems Symposium.

[7]  Yao Guo,et al.  Energy-Aware Fixed-Priority Multi-core Scheduling for Real-Time Systems , 2011, 2011 IEEE 17th International Conference on Embedded and Real-Time Computing Systems and Applications.

[8]  Nathan Fisher,et al.  Power minimization for parallel real-time systems with malleable jobs and homogeneous frequencies , 2014, 2014 IEEE 20th International Conference on Embedded and Real-Time Computing Systems and Applications.

[9]  Joonwon Lee,et al.  Energy Efficient Scheduling of Real-Time Tasks on Multicore Processors , 2008, IEEE Transactions on Parallel and Distributed Systems.

[10]  Björn Andersson,et al.  The utilization bounds of partitioned and pfair static-priority scheduling on multiprocessors are 50% , 2003, 15th Euromicro Conference on Real-Time Systems, 2003. Proceedings..

[11]  Chenyang Lu,et al.  Analysis of Federated and Global Scheduling for Parallel Real-Time Tasks , 2014, 2014 26th Euromicro Conference on Real-Time Systems.

[12]  Rami G. Melhem,et al.  Power-aware scheduling for AND/OR graphs in real-time systems , 2004, IEEE Transactions on Parallel and Distributed Systems.

[13]  Albert Y. Zomaya,et al.  Energy-aware parallel task scheduling in a cluster , 2013, Future Gener. Comput. Syst..

[14]  Björn Andersson,et al.  Analyzing Global-EDF for Multiprocessor Scheduling of Parallel Tasks , 2012, OPODIS.

[15]  Ronald L. Rivest,et al.  Introduction to Algorithms, third edition , 2009 .

[16]  Hyung Chul Kim,et al.  Life Cycle Assessment of Connected and Automated Vehicles: Sensing and Computing Subsystem and Vehicle Level Effects. , 2018, Environmental science & technology.

[17]  Nan Guan,et al.  Energy-Efficient Parallel Real-Time Scheduling on Clustered Multi-Core , 2020, IEEE Transactions on Parallel and Distributed Systems.

[18]  Yixin Chen,et al.  Near Optimal Rate Selection for Wireless Control Systems , 2012, 2012 IEEE 18th Real Time and Embedded Technology and Applications Symposium.

[19]  Tei-Wei Kuo,et al.  An approximation algorithm for energy-efficient scheduling on a chip multiprocessor , 2005, Design, Automation and Test in Europe.

[20]  Gang Chen,et al.  Energy-efficient mapping of real-time streaming applications on cluster heterogeneous MPSoCs , 2015, 2015 13th IEEE Symposium on Embedded Systems For Real-time Multimedia (ESTIMedia).

[21]  Michael M. Swift,et al.  Per-Application Power Delivery , 2019, EuroSys.

[22]  Jian-Jia Chen,et al.  Energy Efficient Task Partitioning Based on the Single Frequency Approximation Scheme , 2013, 2013 IEEE 34th Real-Time Systems Symposium.

[23]  Abusayeed Saifullah,et al.  Energy-Efficient Real-Time Scheduling of DAGs on Clustered Multi-Core Platforms , 2019, 2019 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS).

[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]  Nathan Fisher,et al.  Bringing Inter-Thread Cache Benefits to Federated Scheduling , 2020, 2020 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS).

[26]  Sebastian Stiller,et al.  Feasibility Analysis in the Sporadic DAG Task Model , 2013, 2013 25th Euromicro Conference on Real-Time Systems.

[27]  Gregor von Laszewski,et al.  Towards Energy Aware Scheduling for Precedence Constrained Parallel Tasks in a Cluster with DVFS , 2010, 2010 10th IEEE/ACM International Conference on Cluster, Cloud and Grid Computing.

[28]  Haoyi Xiong,et al.  Energy-Efficient Real-Time Scheduling of DAG Tasks , 2018, ACM Trans. Embed. Comput. Syst..

[29]  Lothar Thiele,et al.  Exploring Energy Saving for Mixed-Criticality Systems on Multi-Cores , 2016, 2016 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS).

[30]  Sanjoy K. Baruah Improved Multiprocessor Global Schedulability Analysis of Sporadic DAG Task Systems , 2014, 2014 26th Euromicro Conference on Real-Time Systems.

[31]  Geoffrey Nelissen,et al.  Techniques Optimizing the Number of Processors to Schedule Multi-threaded Tasks , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[32]  Chenyang Lu,et al.  Multi-core real-time scheduling for generalized parallel task models , 2011, 2011 IEEE 32nd Real-Time Systems Symposium.

[33]  Jean-Marc Vincent,et al.  Random graph generation for scheduling simulations , 2010, SimuTools.

[34]  Naehyuck Chang,et al.  Accurate Modeling of the Delay and Energy Overhead of Dynamic Voltage and Frequency Scaling in Modern Microprocessors , 2013, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[35]  Joël Goossens,et al.  Quantifying Energy Consumption for Practical Fork-Join Parallelism on an Embedded Real-Time Operating System , 2016, RTNS.

[36]  Wan Yeon Lee,et al.  Energy-Efficient Scheduling of Periodic Real-Time Tasks on Lightly Loaded Multicore Processors , 2012, IEEE Transactions on Parallel and Distributed Systems.

[37]  Chenyang Lu,et al.  Parallel Real-Time Scheduling of DAGs , 2014, IEEE Transactions on Parallel and Distributed Systems.

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

[39]  Saurabh Dighe,et al.  A 48-Core IA-32 Processor in 45 nm CMOS Using On-Die Message-Passing and DVFS for Performance and Power Scaling , 2011, IEEE Journal of Solid-State Circuits.

[40]  Giorgio C. Buttazzo,et al.  Energy-Aware Scheduling for Real-Time Systems , 2016, ACM Trans. Embed. Comput. Syst..

[41]  Wang Yi,et al.  Energy-efficient scheduling for parallel real-time tasks based on level-packing , 2011, SAC.

[42]  Sanjoy K. Baruah,et al.  The Global EDF Scheduling of Systems of Conditional Sporadic DAG Tasks , 2015, 2015 27th Euromicro Conference on Real-Time Systems.

[43]  Daniel F. Garcia,et al.  Utilization Bounds for EDF Scheduling on Real-Time Multiprocessor Systems , 2004, Real-Time Systems.

[44]  Daniel Mossé,et al.  Energy-efficient policies for embedded clusters , 2005, LCTES '05.

[45]  Keqin Li,et al.  Energy efficient scheduling of parallel tasks on multiprocessor computers , 2012, The Journal of Supercomputing.

[46]  Chenyang Lu,et al.  A real-time scheduling service for parallel tasks , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[47]  Ragunathan Rajkumar,et al.  Energy-efficient allocation of real-time applications onto Heterogeneous Processors , 2014, 2014 IEEE 20th International Conference on Embedded and Real-Time Computing Systems and Applications.

[48]  Jian Li,et al.  Power-efficient time-sensitive mapping in heterogeneous systems , 2012, 2012 21st International Conference on Parallel Architectures and Compilation Techniques (PACT).

[49]  Fanxin Kong,et al.  Energy Minimizing for Parallel Real-Time Tasks Based on Level-Packing , 2012, 2012 IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[50]  Nan Guan,et al.  Mixed-Criticality Multicore Scheduling of Real-Time Gang Task Systems , 2019, 2019 IEEE Real-Time Systems Symposium (RTSS).

[51]  Ragunathan Rajkumar,et al.  Parallel scheduling for cyber-physical systems: Analysis and case study on a self-driving car , 2013, 2013 ACM/IEEE International Conference on Cyber-Physical Systems (ICCPS).

[52]  Giuseppe Lipari,et al.  Minimizing CPU energy in real-time systems with discrete speed management , 2009, TECS.

[53]  Haoyi Xiong,et al.  Energy-Efficient Multi-Core Scheduling for Real-Time DAG Tasks , 2017, ECRTS.

[54]  Jian-Jia Chen,et al.  Energy efficiency analysis for the Single Frequency Approximation (SFA) scheme , 2013, 2013 IEEE 19th International Conference on Embedded and Real-Time Computing Systems and Applications.

[55]  ChenGang,et al.  Energy optimization for real-time multiprocessor system-on-chip with optimal DVFS and DPM combination , 2014 .

[56]  Lothar Thiele,et al.  Energy minimization for periodic real-time tasks on heterogeneous processing units , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.

[57]  Ying Lu,et al.  Efficient Power Management of Heterogeneous Soft Real-Time Clusters , 2008, 2008 Real-Time Systems Symposium.

[58]  Yifeng Guo,et al.  Reliability-aware power management for parallel real-time applications with precedence constraints , 2011, 2011 International Green Computing Conference and Workshops.

[59]  Dakai Zhu,et al.  Energy Efficient Block-Partitioned Multicore Processors for Parallel Applications , 2011, Journal of Computer Science and Technology.

[60]  Lei Ren,et al.  Analysis and Optimization of Embedded Software Energy Consumption on the Source Code and Algorithm Level , 2009, 2009 Fourth International Conference on Embedded and Multimedia Computing.

[61]  Wang Yi,et al.  Semi-Federated Scheduling of Parallel Real-Time Tasks on Multiprocessors , 2017, 2017 IEEE Real-Time Systems Symposium (RTSS).