Off-line mapping of multi-rate dependent task sets to many-core platforms

This paper presents an approach to execute safety-critical applications on multi- and many-core processors in a predictable manner. We investigate three concrete platforms: the Intel Single-chip Cloud Computer, the Texas Instruments TMS320C6678 and the Tilera TILEmpower-Gx36. We define an execution model to safely execute dependent periodic task sets on these platforms. The four rules of the execution model entail that an off-line mapping of the application to the platform must be computed. The paper details our approach to automatically compute a valid mapping. Furthermore, we evaluate our approach, which is based on constraint programming, by applying it to several task sets that are derived from industrial applications.

[1]  Michael Paulitsch,et al.  Leveraging Multi-core Computing Architectures in Avionics , 2012, 2012 Ninth European Dependable Computing Conference.

[2]  Frédéric Boniol,et al.  Multi-task Implementation of Multi-periodic Synchronous Programs , 2011, Discret. Event Dyn. Syst..

[3]  Jan Reineke,et al.  Impact of resource sharing on performance and performance prediction , 2013, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[4]  Maryline Chetto,et al.  Dynamic scheduling of real-time tasks under precedence constraints , 1990, Real-Time Systems.

[5]  Kim G. Larsen,et al.  Optimal scheduling using priced timed automata , 2005, PERV.

[6]  Benoît Dupont de Dinechin,et al.  A clustered manycore processor architecture for embedded and accelerated applications , 2013, 2013 IEEE High Performance Extreme Computing Conference (HPEC).

[7]  Lui Sha,et al.  Real-Time I/O Management System with COTS Peripherals , 2013, IEEE Transactions on Computers.

[8]  Hermann Kopetz,et al.  Sparse time versus dense time in distributed real-time systems , 1992, [1992] Proceedings of the 12th International Conference on Distributed Computing Systems.

[9]  Liliana Cucu-Grosjean,et al.  On the periodic behavior of real-time schedulers on identical multiprocessor platforms , 2013, ArXiv.

[10]  Kang G. Shin,et al.  Combined Task and Message Scheduling in Distributed Real-Time Systems , 1999, IEEE Trans. Parallel Distributed Syst..

[11]  BronCoen,et al.  Algorithm 457: finding all cliques of an undirected graph , 1973 .

[12]  Steve Brosky,et al.  Shielded processors: guaranteeing sub-millisecond response in standard Linux , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[13]  Cecilia Ekelin An Optimization Framework for Scheduling of Embedded Real-Time Systems , 2004 .

[14]  Hadrien Cambazard,et al.  Solving a real-time allocation problem with constraint programming , 2008, J. Syst. Softw..

[15]  Jia Xu,et al.  Multiprocessor Scheduling of Processes with Release Times, Deadlines, Precedence, and Exclusion Relations , 1993, IEEE Trans. Software Eng..

[16]  Benoît Dupont de Dinechin,et al.  Time-critical computing on a single-chip massively parallel processor , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[17]  Dennis Brylow,et al.  BareMichael: A Minimalistic Bare-metal Framework for the Intel SCC , 2012, MARC Symposium.

[18]  Patrick Meumeu Yomsi,et al.  Feasibility intervals for homogeneous multicores, asynchronous periodic tasks, and FJP schedulers , 2013, RTNS '13.

[19]  Giorgio C. Buttazzo,et al.  Biasing effects in schedulability measures , 2004, Proceedings. 16th Euromicro Conference on Real-Time Systems, 2004. ECRTS 2004..

[20]  Jörg Würtz,et al.  Scheduling of Time-Triggered Real-Time Systems , 2000, Constraints.

[21]  Kang G. Shin,et al.  Assignment and Scheduling Communicating Periodic Tasks in Distributed Real-Time Systems , 1997, IEEE Trans. Software Eng..

[22]  Julien Forget,et al.  A Synchronous Language for Critical Embedded Systems with Multiple Real-Time Constraints. (Un Langage Synchrone pour les Systèmes Embarqués Critiques Soumis à des Contraintes Temps Réel Multiples) , 2009 .

[23]  Daniel Gracia Pérez,et al.  Predictable Flight Management System Implementation on a Multicore Processor , 2014 .

[24]  Claire Pagetti,et al.  The ROSACE case study: From Simulink specification to multi/many-core execution , 2014, 2014 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[25]  Aloysius Ka-Lau Mok,et al.  Fundamental design problems of distributed systems for the hard-real-time environment , 1983 .

[26]  J. E. Cooling Operating systems for real-time applications , 1991 .

[27]  Daniel Gracia Pérez,et al.  Studying co-running avionic real-time applications on multi-core COTS architectures , 2014 .

[28]  Frédéric Boniol,et al.  Off-line (Optimal) multiprocessor scheduling of dependent periodic tasks , 2012, SAC '12.

[29]  Frédéric Boniol,et al.  A Framework for Distributing Real-Time Functions , 2008, FORMATS.

[30]  C. Bron,et al.  Algorithm 457: finding all cliques of an undirected graph , 1973 .

[31]  Paraskevas Bourgos,et al.  Rigorous Design Flow for Programming Manycore Platforms , 2013 .

[32]  Hugues Cassé,et al.  Deterministic Execution Model on COTS Hardware , 2012, ARCS.

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

[34]  Benoît Dupont de Dinechin,et al.  A Distributed Run-Time Environment for the Kalray MPPA®-256 Integrated Manycore Processor , 2013, ICCS.

[35]  Claire Pagetti,et al.  Mapping a multi-rate synchronous language to a many-core processor , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[36]  C. V. Ramamoorthy,et al.  Optimal Scheduling Strategies in a Multiprocessor System , 1972, IEEE Transactions on Computers.

[37]  Jakob Engblom,et al.  The worst-case execution-time problem—overview of methods and survey of tools , 2008, TECS.