Run-Time Slack Distribution for Real-Time Data-Flow Applications on Embedded MPSoC

Low energy consumption is crucial for embedded systems, including the ones that employ tiled Multiprocessor Systems-on-Chip(MPSoC). Such systems often execute real-time applications consisting of several tasks synchronized in a data-flow manner and mapped over different MPSoC tiles. Energy can be saved by lowering the processor voltage and frequency, hence extending the application execution over periods of time otherwise left idle, i.e., exploiting slack. In this paper we propose a framework to distribute slack information at run-time, intra-and inter-tile, to enable accurate and conservative slack calculation within each tile. The slack is transferred along with the existing inter-task synchronization and as a result it is distributed across the MPSoC with low overhead. In each tile, we add a hardware block that calculates the slack received during inter-tile communication and a software library to program this hardware. We integrate this framework into an existing MPSoC platform and we prototype an entire system with two tiles on an Xilinx ML605 FPGA board. We demonstrate the effectiveness of our proposal with a simple, conservative, DVFS management policy applied to an H.264 decoder application. The experimental results suggest that our framework reduces %the average processors frequency with 56% and the energy consumption with 53%, the total energy consumption of tiles with 27%, when compared to a state-of-the-art intra-tile approach that uses a similar management policy. Our proposal introduces only a minor software overhead of up to 4% over the application execution time and negligible additional FPGA chip utilization of 0.002%.

[1]  Radu Marculescu,et al.  System-level performance/power analysis for platform-based design of multimedia applications , 2007, TODE.

[2]  Rajesh K. Gupta,et al.  Dynamic slack reclamation with procrastination scheduling in real-time embedded systems , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[3]  Stamatis Vassiliadis,et al.  The MOLEN polymorphic processor , 2004, IEEE Transactions on Computers.

[4]  Georgi Kuzmanov,et al.  Architectural Support for Multithreading on Reconfigurable Hardware , 2011, ARC.

[5]  Sander Stuijk,et al.  Buffer Sizing for Rate-Optimal Single-Rate Data-Flow Scheduling Revisited , 2010, IEEE Transactions on Computers.

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

[7]  Ali Dasdan,et al.  Experimental analysis of the fastest optimum cycle ratio and mean algorithms , 2004, TODE.

[8]  Kees G. W. Goossens,et al.  Conservative Dynamic Energy Management for Real-Time Dataflow Applications Mapped on Multiple Processors , 2009, 2009 12th Euromicro Conference on Digital System Design, Architectures, Methods and Tools.

[9]  Kees G. W. Goossens,et al.  C-HEAP: A Heterogeneous Multi-Processor Architecture Template and Scalable and Flexible Protocol for the Design of Embedded Signal Processing Systems , 2002, Des. Autom. Embed. Syst..

[10]  Luca Benini,et al.  Application-specific power-aware workload allocation for voltage scalable MPSoC platforms , 2005, 2005 International Conference on Computer Design.

[11]  Hui Liu,et al.  Overhead-aware energy optimization for real-time streaming applications on multiprocessor System-on-Chip , 2011, TODE.

[12]  Ba Thang Nguyen MSc THESIS Task Scheduling Methods for Composable and Predictable MPSoCs , 2010 .

[13]  Kees G. W. Goossens,et al.  Decoupled inter- and intra-application scheduling for composable and robust embedded MPSoC platforms , 2012, Map2MPSoC/SCOPES.

[14]  Edward A. Lee,et al.  Deploying Hard Real-Time Control Software on Chip-Multiprocessors , 2010, 2010 IEEE 16th International Conference on Embedded and Real-Time Computing Systems and Applications.

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

[16]  Kees G. W. Goossens,et al.  CoMPSoC: A template for composable and predictable multi-processor system on chips , 2009, TODE.

[17]  Luca Benini,et al.  A control theoretic approach to energy-efficient pipelined computation in MPSoCs , 2007, TECS.

[18]  B. T. Nguyen Task Scheduling Methods for Composable and Predictable MPSoC , 2010 .

[19]  Shuvra S. Bhattacharyya,et al.  Embedded Multiprocessors: Scheduling and Synchronization , 2000 .