Energy-Efficient Allocation of Real-Time Applications onto Single-ISA Heterogeneous Multi-Core Processors

Self-powered systems that interact with the physical world require computing platforms with predictable timing behavior and a low energy demand. Energy consumption can be reduced by choosing energy-efficient designs for both hardware and software components of the platform. We leverage the state-of-the-art in hardware design by adopting Heterogeneous Multi-core Processors with support for Dynamic Voltage and Frequency Scaling and Dynamic Power Management. Through experiments on one such platform, we expose the hardware characteristics that violate assumptions of conventional energy models and propose a revised model suitable for identifying the energy-efficient frequency range. We then address the problem of allocating real-time software components onto heterogeneous cores such that total energy is minimized. Our approach is to start from an analytically justified target load distribution and find a task assignment heuristic that approximates it. Our analysis shows that neither balancing the load nor assigning all load to the “cheapest” core is the best load distribution strategy, unless the cores are extremely alike or extremely different. The optimal load distribution is then formulated as a solution to a convex optimization problem. A heuristic that approximates this load distribution and an alternative method that leverages the solution explicitly are proposed as viable task assignment methods. The proposed methods are compared to state-of-the-art on simulated problem instances and in a case study of a soft-real-time application on an off-the-shelf ARM big.LITTLE heterogeneous processor.

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

[2]  Diana Marculescu,et al.  Analysis of dynamic voltage/frequency scaling in chip-multiprocessors , 2007, Proceedings of the 2007 international symposium on Low power electronics and design (ISLPED '07).

[3]  Nikil D. Dutt,et al.  Exploring efficient operating points for voltage scaled embedded processor cores , 2003, RTSS 2003. 24th IEEE Real-Time Systems Symposium, 2003.

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

[5]  Tei-Wei Kuo,et al.  An approximation scheme for energy-efficient scheduling of real-time tasks in heterogeneous multiprocessor systems , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[6]  Vinay Devadas,et al.  DFR-EDF: A Unified Energy Management Framework for Real-Time Systems , 2010, 2010 16th IEEE Real-Time and Embedded Technology and Applications Symposium.

[7]  Stefan M. Petters,et al.  Energy-aware partitioning of tasks onto a heterogeneous multi-core platform , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[8]  Niraj K. Jha,et al.  Power-Efficient Scheduling for Heterogeneous Distributed Real-Time Embedded Systems , 2007, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[9]  Rami G. Melhem,et al.  Dynamic and aggressive scheduling techniques for power-aware real-time systems , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[10]  Lothar Thiele,et al.  Energy-Efficient Task Partition for Periodic Real-Time Tasks on Platforms with Dual Processing Elements , 2008, 2008 14th IEEE International Conference on Parallel and Distributed Systems.

[11]  Ragunathan Rajkumar,et al.  Critical power slope: understanding the runtime effects of frequency scaling , 2002, ICS '02.

[12]  Tai-Yi Huang,et al.  An Optimal Solution for the Heterogeneous Multiprocessor Single-Level Voltage-Setup Problem , 2009, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[13]  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).

[14]  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.

[15]  Jie Wu,et al.  Energy-aware Scheduling on Multiprocessor Platforms , 2012, SpringerBriefs in Computer Science.

[16]  Jie Wu,et al.  Energy-Aware Scheduling for Frame-Based Tasks on Heterogeneous Multiprocessor Platforms , 2012, 2012 41st International Conference on Parallel Processing.

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

[18]  Ragunathan Rajkumar,et al.  Energy-Aware Partitioned Fixed-Priority Scheduling for Chip Multi-processors , 2011, 2011 IEEE 17th International Conference on Embedded and Real-Time Computing Systems and Applications.

[19]  Stephen P. Boyd,et al.  Convex Optimization , 2004, Algorithms and Theory of Computation Handbook.

[20]  Joseph Y.-T. Leung,et al.  On the complexity of fixed-priority scheduling of periodic, real-time tasks , 1982, Perform. Evaluation.

[21]  Trevor Mudge,et al.  MiBench: A free, commercially representative embedded benchmark suite , 2001 .

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

[23]  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..

[24]  Viktor K. Prasanna,et al.  Resource Allocation for Independent Real-Time Tasks in Heterogeneous Systems for Energy Minimization , 2003, J. Inf. Sci. Eng..

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

[26]  Tai-Yi Huang,et al.  A Near-optimal Solution for the Heterogeneous Multi-processor Single-level Voltage Setup Problem , 2007, 2007 IEEE International Parallel and Distributed Processing Symposium.