Interference-Aware Memory Allocation for Real-Time Multi-Core Systems

Computing tight upper bounds for the Worst-Case Execution Time (WCET) at design-time is a crucial step when developing hard real-time software. For multi-core processors, however, timing interference between processor cores is a major problem, which may lead to overestimated WCET bounds. This work investigates possible solutions to reduce interference costs using synchronization-based interference models and appropriate memory allocation schemes. An interference-aware Integer Linear Programming (ILP) formulation of the memory allocation problem is presented to optimally map the variables of parallel programs to a set of distributed memory segments. The approach uses a generic model of the hardware platform, such that it applies to a wide range of multi-core targets, including complex Network-on-Chip (NoC) interconnects. A case study with six different platform configurations shows that interference costs can be bounded more tightly using the proposed interference model. An evaluation of the allocation scheme furthermore shows that the optimization approach can reduce interference costs by up to 49%.

[1]  Paul Lokuciejewski,et al.  A compiler framework for the reduction of worst-case execution times , 2010, Real-Time Systems.

[2]  Jean-François Deverge,et al.  WCET-Directed Dynamic Scratchpad Memory Allocation of Data , 2007, 19th Euromicro Conference on Real-Time Systems (ECRTS'07).

[3]  David Broman,et al.  WCET-aware dynamic code management on scratchpads for Software-Managed Multicores , 2014, 2014 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[4]  Wei Zhang,et al.  Scratchpad Memory Architectures and Allocation Algorithms for Hard Real-Time Multicore Processors , 2015, J. Comput. Sci. Eng..

[5]  Peter Marwedel,et al.  Parallelism Analysis: Precise WCET Values for Complex Multi-Core Systems , 2014, FTSCS.

[6]  Umut Durak,et al.  WCET-aware parallelization of model-based applications for multi-cores: The ARGO approach , 2017, Design, Automation & Test in Europe Conference & Exhibition (DATE), 2017.

[7]  Steven Derrien,et al.  Tightening Contention Delays While Scheduling Parallel Applications on Multi-core Architectures , 2017, ACM Trans. Embed. Comput. Syst..

[8]  Dominic Oehlert,et al.  Bus-Aware Static Instruction SPM Allocation for Multicore Hard Real-Time Systems , 2017, ECRTS.

[9]  Harald Bucher,et al.  A WCET-aware parallel programming model for predictability enhanced multi-core architectures , 2018, 2018 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[10]  Umut Durak,et al.  Worst-Case Execution-Time-Aware Parallelization of Model-Based Avionics Applications , 2019, Journal of Aerospace Information Systems.

[11]  Hui Wu,et al.  WCET-aware data selection and allocation for scratchpad memory , 2012, LCTES '12.

[12]  Peter Marwedel,et al.  Evaluation of resource arbitration methods for multi-core real-time systems , 2013, WCET.

[13]  Rajeev Barua,et al.  Heterogeneous memory management for embedded systems , 2001, CASES '01.

[14]  Jörg Henkel,et al.  Invasive manycore architectures , 2012, 17th Asia and South Pacific Design Automation Conference.

[15]  Lili Tan,et al.  The worst-case execution time tool challenge 2006 , 2006, Second International Symposium on Leveraging Applications of Formal Methods, Verification and Validation (isola 2006).

[16]  Ting Chen,et al.  WCET centric data allocation to scratchpad memory , 2005, 26th IEEE International Real-Time Systems Symposium (RTSS'05).

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

[18]  Robert I. Davis,et al.  Response Time Analysis of Synchronous Data Flow Programs on a Many-Core Processor , 2016, RTNS '16.

[19]  Henrik Theiling,et al.  Multi-core Interference-Sensitive WCET Analysis Leveraging Runtime Resource Capacity Enforcement , 2014, 2014 26th Euromicro Conference on Real-Time Systems.

[20]  Alireza Ejlali,et al.  Dynamic Shared SPM Reuse for Real-Time Multicore Embedded Systems , 2015, ACM Trans. Archit. Code Optim..