DAARM: Design-time application analysis and run-time mapping for predictable execution in many-core systems

Future many-core systems are envisaged to support the concurrent execution of varying mixes of different applications. Because of the vast number of binding options for such mixes on heterogeneous resources, enabling predictable application execution is far from trivial. Hybrid application mapping is an efficient way of achieving run-time predictability by combining design-time analysis of application mappings with run-time management. Existing hybrid mapping strategies focus on computation resources and either ignore communication details or make significantly simplifying assumptions like unlimited bandwidth or exclusive usage. But, actual many-core systems consist of constrained and shared computation and communication resources where the run-time decision of whether a feasible application binding on a set of preoccupied resources exists or not is an NP-complete problem. As a remedy, we present a novel hybrid application mapping approach that considers constrained shared communication and computation resources. Here, (a) a design space exploration coupled with a formal performance analysis delivers several resource reservation configurations with verified real-time guarantees for each individual application. The configurations are then transformed to (b) a novel efficient intermediate representation that is passed to the run-time management where we (c) formulate run-time resource reservation and application binding as a constraint satisfaction problem and present an adequate solving mechanism. Our experimental evaluation shows that existing approaches may produce infeasible outcomes and are thus not applicable for predictable application execution, while the proposed approach enables predictable and efficient run-time management of dynamic application mixes.

[1]  Karl-Erik Årzén,et al.  Resource Management on Multicore Systems: The ACTORS Approach , 2011, IEEE Micro.

[2]  Azadeh Davoodi,et al.  A fast and scalable multidimensional multiple-choice knapsack heuristic , 2013, TODE.

[3]  Vittorio Zaccaria,et al.  Using multi-objective design space exploration to enable run-time resource management for reconfigurable architectures , 2012, 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[4]  Fernando Gehm Moraes,et al.  Achieving composability in NoC-based MPSoCs through QoS management at software level , 2011, 2011 Design, Automation & Test in Europe.

[5]  Kees G. W. Goossens,et al.  Composability and Predictability for Independent Application Development, Verification, and Execution , 2011, Multiprocessor System-on-Chip.

[6]  Martin Lukasiewycz,et al.  Opt4J: a modular framework for meta-heuristic optimization , 2011, GECCO '11.

[7]  Andy D. Pimentel,et al.  Scenario-based design space exploration of MPSoCs , 2010, 2010 IEEE International Conference on Computer Design.

[8]  H. Corporaal,et al.  Fast Multi-Dimension Multi-Choice Knapsack Heuristic for MP-SoC Run-Time Management , 2006, 2006 International Symposium on System-on-Chip.

[9]  Edward P. K. Tsang,et al.  Foundations of constraint satisfaction , 1993, Computation in cognitive science.

[10]  Kees Goossens,et al.  AEthereal network on chip: concepts, architectures, and implementations , 2005, IEEE Design & Test of Computers.

[11]  Jürgen Teich,et al.  Symbolic design space exploration for multi-mode reconfigurable systems , 2011, 2011 Proceedings of the Ninth IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[12]  P.T. Wolkotte,et al.  Energy Model of Networks-on-Chip and a Bus , 2005, 2005 International Symposium on System-on-Chip.

[13]  Jürgen Teich,et al.  Game-theoretic analysis of decentralized core allocation schemes on many-core systems , 2013, 2013 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[14]  Xianfeng Li,et al.  Chronos: A timing analyzer for embedded software , 2007, Sci. Comput. Program..

[15]  Michael Glaß,et al.  Multi-objective distributed run-time resource management for many-cores , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[16]  Amit Kumar Singh,et al.  Mapping on multi/many-core systems: Survey of current and emerging trends , 2013, 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC).

[17]  Amit Kumar Singh,et al.  Accelerating throughput-aware runtime mapping for heterogeneous MPSoCs , 2013, TODE.

[18]  Herb Sutter,et al.  The Free Lunch Is Over A Fundamental Turn Toward Concurrency in Software , 2013 .

[19]  Reinhold Heckmann,et al.  Worst case execution time prediction by static program analysis , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[20]  Radu Marculescu,et al.  Energy-aware mapping for tile-based NoC architectures under performance constraints , 2003, ASP-DAC '03.

[21]  Wolfgang Schröder-Preikschat,et al.  DistRM: Distributed resource management for on-chip many-core systems , 2011, 2011 Proceedings of the Ninth IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[22]  Steven Swanson,et al.  Greendroid: Exploring the next evolution in smartphone application processors , 2011, IEEE Communications Magazine.

[23]  Coniferous softwood GENERAL TERMS , 2003 .

[24]  Jürgen Becker,et al.  Providing multiple hard latency and throughput guarantees for packet switching networks on chip , 2013, Comput. Electr. Eng..