Energy-efficient mapping of real-time applications on heterogeneous MPSoCs using task replication

In this paper, we study the problem of exploiting parallelism in a hard real-time streaming application modeled as a Synchronous Data Flow (SDF) graph and scheduled on a cluster heterogeneous Multi-Processor System-on-Chip (MPSoC) platform such that energy consumption is minimized and a throughput requirement is satisfied. We propose a polynomial-time solution approach which: 1) determines a processor type for each task in an SDF graph such that the throughput constraint is met and energy consumption is minimized; 2) determines a replication factor for each task in an SDF graph such that the distribution of the workload on the same type of processors is balanced, which enables processors to run at a lower frequency, hence reducing the energy consumption. Experiments on a set of real-life streaming applications demonstrate that our approach reduces energy consumption by 66% on average while meeting the same throughput requirement when compared to related energy minimization approaches.

[1]  James H. Anderson,et al.  An Empirical Comparison of Global, Partitioned, and Clustered Multiprocessor EDF Schedulers , 2010, 2010 31st IEEE Real-Time Systems Symposium.

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

[3]  Di Liu,et al.  Improved hard real-time scheduling of CSDF-modeled streaming applications , 2015, 2015 International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[4]  Simon Holmbacka,et al.  Energy-Awareness and Performance Management with Parallel Dataflow Applications , 2017, J. Signal Process. Syst..

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

[6]  William Thies,et al.  An empirical characterization of stream programs and its implications for language and compiler design , 2010, 2010 19th International Conference on Parallel Architectures and Compilation Techniques (PACT).

[7]  E.A. Lee,et al.  Synchronous data flow , 1987, Proceedings of the IEEE.

[8]  Amit Kumar Singh,et al.  Energy optimization by exploiting execution slacks in streaming applications on Multiprocessor Systems , 2013, 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC).

[9]  Di Liu,et al.  Exploiting resource-constrained parallelism in hard real-time streaming applications , 2016, 2016 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[10]  Sander Stuijk,et al.  Power Minimisation for Real-Time Dataflow Applications , 2011, 2011 14th Euromicro Conference on Digital System Design.

[11]  Tei-Wei Kuo,et al.  Energy-efficient real-time scheduling of multimedia tasks on multi-core processors , 2010, SAC '10.

[12]  Alan Burns,et al.  A survey of hard real-time scheduling for multiprocessor systems , 2011, CSUR.

[13]  Sander Stuijk,et al.  Throughput-constrained DVFS for scenario-aware dataflow graphs , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[14]  Wan Yeon Lee,et al.  Energy-Saving DVFS Scheduling of Multiple Periodic Real-Time Tasks on Multi-core Processors , 2009, 2009 13th IEEE/ACM International Symposium on Distributed Simulation and Real Time Applications.

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

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

[17]  Dirk Janssens,et al.  A Fast Heuristic for Scheduling Parallel Software with Respect to Energy and Timing Constraints , 2011, 2011 IEEE International Symposium on Parallel and Distributed Processing Workshops and Phd Forum.

[18]  Jean A. Peperstraete,et al.  Cycle-static dataflow , 1996, IEEE Trans. Signal Process..

[19]  Jie Wu,et al.  Energy-Aware Scheduling for Acyclic Synchronous Data Flows on Multiprocessors , 2013, J. Interconnect. Networks.

[20]  Edward G. Coffman,et al.  Approximation algorithms for bin packing: a survey , 1996 .

[21]  Axel Jantsch,et al.  Energy efficient streaming applications with guaranteed throughput on MPSoCs , 2008, EMSOFT '08.

[22]  Kees G. W. Goossens,et al.  Throughput-constrained voltage and frequency scaling for real-time heterogeneous multiprocessors , 2013, SAC '13.

[23]  Tulika Mitra,et al.  Heterogeneous Multi-core Architectures , 2015, IPSJ Trans. Syst. LSI Des. Methodol..

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

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

[26]  Edward A. Lee,et al.  StreaMorph: A case for synthesizing energy-efficient adaptive programs using high-level abstractions , 2013, 2013 Proceedings of the International Conference on Embedded Software (EMSOFT).

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