Energy-efficient scheduling for moldable real-time tasks on heterogeneous computing platforms

In this paper, we address the problem of executing (soft) real-time data processing applications on heterogeneous computing platforms with the goal of reducing the energy consumption. The typical application domain is edge computing (or fog computing), where a certain amount of data, collected from the environment, needs to be pre-processed in real-time before being sent to the central server for storage and final processing. The kind of applications we address here can be easily parallelized, and we also need to reduce as much as possible the necessary energy to perform such tasks. Heterogeneous Multi-core Processors (HMP) such as ARM big.LITTLE are designed to combine both performances and energy efficiency, so they are one of the preferred choices for this kind of applications. Here we focus on Dynamic Voltage and Frequency Scaling (DVFS), parallelization, real-time scheduling and resource allocation techniques. In the first part of the paper, we present a model of the performance and energy consumption of a parallel real-time task executed on an ARM bigLITTLE architecture. We use this model in the second part of the paper where we first define the optimization problem as an Integer Non-linear Programming (INLP) problem, and then propose heuristics for efficiently solving it. Finally, we present a wide range of synthetic experiments that demonstrate the performance of our approach.

[1]  LipariGiuseppe,et al.  Energy-efficient scheduling for moldable real-time tasks on heterogeneous computing platforms , 2017 .

[2]  Jorge Nocedal,et al.  Knitro: An Integrated Package for Nonlinear Optimization , 2006 .

[3]  Sanjoy K. Baruah,et al.  The partitioned multiprocessor scheduling of sporadic task systems , 2005, 26th IEEE International Real-Time Systems Symposium (RTSS'05).

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

[5]  Rohit Chandra,et al.  Parallel programming in openMP , 2000 .

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

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

[8]  Chung Laung Liu,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[9]  Pedro Tomás,et al.  A Framework for Application-Guided Task Management on Heterogeneous Embedded Systems , 2015, ACM Trans. Archit. Code Optim..

[10]  Sanjoy K. Baruah,et al.  Deadline-based scheduling of periodic task systems on multiprocessors , 2002, Inf. Process. Lett..

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

[12]  Wang Yi,et al.  The Digraph Real-Time Task Model , 2011, 2011 17th IEEE Real-Time and Embedded Technology and Applications Symposium.

[13]  Meikang Qiu,et al.  Optimizing Tasks Assignment on Heterogeneous Multi-core Real-Time Systems with Minimum Energy , 2015, 2015 IEEE 17th International Conference on High Performance Computing and Communications, 2015 IEEE 7th International Symposium on Cyberspace Safety and Security, and 2015 IEEE 12th International Conference on Embedded Software and Systems.

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

[15]  Sanjoy K. Baruah,et al.  ILP-Based Approaches to Partitioning Recurrent Workloads Upon Heterogeneous Multiprocessors , 2016, 2016 28th Euromicro Conference on Real-Time Systems (ECRTS).

[16]  Giuseppe Lipari,et al.  Speed modulation in energy-aware real-time systems , 2005, 17th Euromicro Conference on Real-Time Systems (ECRTS'05).

[17]  Joël Goossens,et al.  Scheduling of hard real-time multi-phase multi-thread (MPMT) periodic tasks , 2012, Real-Time Systems.

[18]  Eduardo Valentin,et al.  Response time schedulability analysis for hard real-time systems accounting DVFS latency on heterogeneous cluster-based platform , 2015, 2015 25th International Workshop on Power and Timing Modeling, Optimization and Simulation (PATMOS).

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

[20]  Rami G. Melhem,et al.  The effects of energy management on reliability in real-time embedded systems , 2004, IEEE/ACM International Conference on Computer Aided Design, 2004. ICCAD-2004..

[21]  Liliana Cucu-Grosjean,et al.  Integrating job parallelism in real-time scheduling theory , 2008, Inf. Process. Lett..

[22]  Kenli Li,et al.  Energy-aware preemptive scheduling algorithm for sporadic tasks on DVS platform , 2013, Microprocess. Microsystems.

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

[24]  Wayne H. Wolf,et al.  Computers as components - principles of embedded computing system design , 2005 .

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

[26]  C. Siva Ram Murthy,et al.  A New Approach for Scheduling of Parallelizable Tasks in Real-Time Multiprocessor Systems , 1998, Real-Time Systems.

[27]  Marilyn Wolf Computers as Components, Second Edition: Principles of Embedded Computing System Design , 2008 .

[28]  K Lakshmanan,et al.  Scheduling Parallel Real-Time Tasks on Multi-core Processors , 2010, 2010 31st IEEE Real-Time Systems Symposium.

[29]  Joël Goossens,et al.  Limitation of the hyper-period in real-time periodic task set generation , 2001 .

[30]  Alan Burns,et al.  Priority Assignment for Global Fixed Priority Pre-Emptive Scheduling in Multiprocessor Real-Time Systems , 2009, 2009 30th IEEE Real-Time Systems Symposium.

[31]  Raja Lavanya,et al.  Fog Computing and Its Role in the Internet of Things , 2019, Advances in Computer and Electrical Engineering.

[32]  Sanjoy K. Baruah,et al.  Algorithms and complexity concerning the preemptive scheduling of periodic, real-time tasks on one processor , 1990, Real-Time Systems.

[33]  Sangchul Han,et al.  Predictability of Least Laxity First Scheduling Algorithm on Multiprocessor Real-Time Systems , 2006, EUC Workshops.

[34]  Shinpei Kato,et al.  Gang EDF Scheduling of Parallel Task Systems , 2009, 2009 30th IEEE Real-Time Systems Symposium.

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

[36]  Ragunathan Rajkumar,et al.  Energy-Efficient Allocation of Real-Time Applications onto Single-ISA Heterogeneous Multi-Core Processors , 2016, J. Signal Process. Syst..