A Case Study into Predictable and Composable MPSoC Reconfiguration

The number of applications running concurrently on a MPSoC is ever increasing. Moreover, the set of running applications is often unknown at design-time. Part of the resource allocation decisions must therefore be deferred to run-time. This requires a run-time manager to optimize the resource usage of the system to preserve energy and allow as many applications as possible to use the resources simultaneously. An effective resource manager should therefore be able to reconfigure the resource assignment of running applications. To this end, a run-time task migration mechanism is needed. A user should however not notice the reconfiguration, as this would impact the perceived quality of the system. Hence, the reconfiguration mechanism should provide timing guarantees on its operation and it should not interfere with other applications running on the same system (i.e., it should be predictable and composable). In this paper, we present a practical implementation of such a predictable and composable MPSoC reconfiguration mechanism. We demonstrate the use of this mechanism on a JPEG decoder whose tasks are migrated at run-time while running on a state-of-the-art MPSoC platform.

[1]  Jan Vitek,et al.  Proceedings of the 2011 SIGPLAN/SIGBED conference on Languages, compilers and tools for embedded systems , 2011, LCTES 2011.

[2]  Jörg Henkel,et al.  CARAT: Context-aware runtime adaptive task migration for multi core architectures , 2011, 2011 Design, Automation & Test in Europe.

[3]  Thomas L. Casavant,et al.  A Taxonomy of Scheduling in General-Purpose Distributed Computing Systems , 1988, IEEE Trans. Software Eng..

[4]  M. P. J. Stevens,et al.  A scalable single-chip multi-processor architecture with on-chip RTOS kernel , 2003, J. Syst. Archit..

[5]  Sander Stuijk,et al.  Virtual platforms for mixed time-criticality applications : the CoMPSoC architecture and SDF3 design flow , 2012 .

[6]  Jonathan M. Smith,et al.  AsyMOS-an asymmetric multiprocessor operating system , 1998, 1998 IEEE Open Architectures and Network Programming.

[7]  Davide Bertozzi,et al.  Supporting Task Migration in Multi-Processor Systems-on-Chip: A Feasibility Study , 2006, Proceedings of the Design Automation & Test in Europe Conference.

[8]  J.,et al.  Composability and Predictability for Independent Application Development , Verification and Execution , 2010 .

[9]  Edward A. Lee,et al.  Static Scheduling of Synchronous Data Flow Programs for Digital Signal Processing , 1989, IEEE Transactions on Computers.

[10]  Pierre G. Paulin,et al.  Parallel programming models for a multi-processor SoC platform applied to high-speed traffic management , 2004, CODES+ISSS '04.

[11]  Sander Stuijk,et al.  A parameterized compositional multi-dimensional multiple-choice knapsack heuristic for CMP run-time management , 2009, 2009 46th ACM/IEEE Design Automation Conference.

[12]  Diederik Verkest,et al.  A Safari Through the MPSoC Run-Time Management Jungle , 2010, J. Signal Process. Syst..

[13]  Kees G. W. Goossens,et al.  Design and implementation of an operating system for composable processor sharing , 2011, Microprocess. Microsystems.

[14]  Andrea Acquaviva,et al.  Assessing Task Migration Impact on Embedded Soft Real-Time Streaming Multimedia Applications , 2008, EURASIP J. Embed. Syst..

[15]  Fernando Gehm Moraes,et al.  Evaluating the impact of task migration in multi-processor systems-on-chip , 2010, SBCCI '10.

[16]  Paul Pop,et al.  Task migration for fault-tolerance in mixed-criticality embedded systems , 2009, SIGBED.

[17]  Qinru Qiu,et al.  Distributed task migration for thermal management in many-core systems , 2010, Design Automation Conference.

[18]  Kees G. W. Goossens,et al.  The aethereal network on chip after ten years: Goals, evolution, lessons, and future , 2010, Design Automation Conference.

[19]  Frank Mueller,et al.  Predictable task migration for locked caches in multi-core systems , 2011, LCTES '11.

[20]  Sander Stuijk,et al.  A Predictable Multiprocessor Design Flow for Streaming Applications with Dynamic Behaviour , 2010, DSD.