Optimizing the Functional Deployment on Multicore Platforms with Logical Execution Time

The move to multicore systems requires methods and tools to support the designer in the partitioning of functions among the available cores and the definition of the task model. In this paper we present the formulation of a functional partitioning for real-time systems and we provide an optimization method for an efficient implementation of the Logical Execution Time (LET) paradigm, to enforce causality and determinism in the development of time-and safety-critical applications. A novel schedulability analysis for partitioned tasks executing according to the LET paradigm is also provided. Our methods are applied to the industry-size model of the WATERS challenge and compute solutions that easily outperform the initial solution provided.

[1]  Michael González Harbour,et al.  Schedulability analysis for tasks with static and dynamic offsets , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[2]  Thomas A. Henzinger,et al.  From control models to real-time code using Giotto , 2003 .

[3]  Petru Eles,et al.  Design optimization of mixed time/event-triggered distributed embedded systems , 2003, First IEEE/ACM/IFIP International Conference on Hardware/ Software Codesign and Systems Synthesis (IEEE Cat. No.03TH8721).

[4]  Rolf Ernst,et al.  Applying Sensitivity Analysis in Real-Time Distributed Systems , 2005, IEEE Real-Time and Embedded Technology and Applications Symposium.

[5]  Stavros Tripakis,et al.  A memory-optimal buffering protocol for preservation of synchronous semantics under preemptive scheduling , 2006, EMSOFT '06.

[6]  Christian Herde,et al.  RTSAT-- An Optimal and Efficient Approach to the Task Allocation Problem in Distributed Architectures , 2006, 2006 27th IEEE International Real-Time Systems Symposium (RTSS'06).

[7]  Alberto L. Sangiovanni-Vincentelli,et al.  Improving the Size of Communication Buffers in Synchronous Models With Time Constraints , 2009, IEEE Transactions on Industrial Informatics.

[8]  Marco Caccamo,et al.  A Predictable Execution Model for COTS-Based Embedded Systems , 2011, 2011 17th IEEE Real-Time and Embedded Technology and Applications Symposium.

[9]  Haibo Zeng,et al.  Mechanisms for guaranteeing data consistency and flow preservation in AUTOSAR software on multi-core platforms , 2011, 2011 6th IEEE International Symposium on Industrial and Embedded Systems.

[10]  Lui Sha,et al.  MemGuard: Memory bandwidth reservation system for efficient performance isolation in multi-core platforms , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[11]  Rodolfo Pellizzoni,et al.  Hiding memory latency using fixed priority scheduling , 2014, 2014 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[12]  Rodolfo Pellizzoni,et al.  PALLOC: DRAM bank-aware memory allocator for performance isolation on multicore platforms , 2014, 2014 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[13]  Francisco J. Cazorla,et al.  RunPar: An allocation algorithm for automotive applications exploiting runnable parallelism in multicores , 2014, 2014 International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[14]  Lui Sha,et al.  WCET(m) Estimation in Multi-core Systems Using Single Core Equivalence , 2015, 2015 27th Euromicro Conference on Real-Time Systems.

[15]  Rodolfo Pellizzoni,et al.  A Survey on Cache Management Mechanisms for Real-Time Embedded Systems , 2015, ACM Comput. Surv..

[16]  Björn Andersson,et al.  Bounding and reducing memory interference in COTS-based multi-core systems , 2016, Real-Time Systems.

[17]  Hassan Mohammad,et al.  Poster Abstract: Towards Parallelizing Legacy Embedded Control Software Using the LET Programming Paradigm , 2016, 2016 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS).

[18]  Sabine Glesner,et al.  Splitting tasks for migrating real-time automotive applications to multi-core ECUs , 2016, 2016 11th IEEE Symposium on Industrial Embedded Systems (SIES).

[19]  Marco Caccamo,et al.  A Real-Time Scratchpad-Centric OS for Multi-Core Embedded Systems , 2016, 2016 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS).

[20]  M. Natale,et al.  Logical Execution Time Implementation and Memory Optimization Issues in AUTOSAR Applications for Multicores , 2017 .

[21]  Leandro Soares Indrusiak,et al.  An extensible framework for multicore response time analysis , 2018, Real-Time Systems.

[22]  Dakshina Dasari,et al.  Communication Centric Design in Complex Automotive Embedded Systems , 2017, ECRTS.

[23]  Rolf Ernst,et al.  The Logical Execution Time Paradigm: New Perspectives for Multicore Systems (Dagstuhl Seminar 18092) , 2018, Dagstuhl Reports.

[24]  Giorgio C. Buttazzo,et al.  Memory Feasibility Analysis of Parallel Tasks Running on Scratchpad-Based Architectures , 2018, 2018 IEEE Real-Time Systems Symposium (RTSS).

[25]  Marco Di Natale,et al.  Achieving Predictable Multicore Execution of Automotive Applications Using the LET Paradigm , 2018, 2018 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS).

[26]  Giorgio C. Buttazzo,et al.  Partitioned Fixed-Priority Scheduling of Parallel Tasks Without Preemptions , 2018, 2018 IEEE Real-Time Systems Symposium (RTSS).

[27]  Marco Caccamo,et al.  Designing Mixed Criticality Applications on Modern Heterogeneous MPSoC Platforms , 2019, ECRTS.

[28]  Marco Di Natale,et al.  Simple and General Methods for Fixed-Priority Schedulability in Optimization Problems , 2019, 2019 Design, Automation & Test in Europe Conference & Exhibition (DATE).