Cache Sharing and Isolation Tradeoffs in Multicore Mixed-Criticality Systems

In mixed-critical applications, tension exists between sharing and isolation with respect to hardware resources: while strong isolation might be required for highly critical tasks, somewhat permissive sharing might be reasonable for less critical tasks to improve throughput or average-case performance. In this paper, this tension is examined as it pertains to shared last-level caches (LLCs) on multicore platforms. In particular, criticality-aware optimization techniques based on linear programming are presented for allocating LLC areas in the context of the previously proposed MC2 (mixed-criticality on multicore) framework. Experiments are also presented that show that these techniques can result in significant schedulability improvements.

[1]  Jan Reineke,et al.  CAMA: A Predictable Cache-Aware Memory Allocator , 2011, 2011 23rd Euromicro Conference on Real-Time Systems.

[2]  Lui Sha,et al.  Impact of Cache Partitioning on Multi-tasking Real Time Embedded Systems , 2008, 2008 14th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[3]  Steve Vestal,et al.  Preemptive Scheduling of Multi-criticality Systems with Varying Degrees of Execution Time Assurance , 2007, 28th IEEE International Real-Time Systems Symposium (RTSS 2007).

[4]  S. Vestal Preemptive Scheduling of Multi-criticality Systems with Varying Degrees of Execution Time Assurance , 2007, RTSS 2007.

[5]  Richard E. Kessler,et al.  Page placement algorithms for large real-indexed caches , 1992, TOCS.

[6]  Theodore P. Baker,et al.  The cyclic executive model and Ada , 2006, Real-Time Systems.

[7]  James H. Anderson,et al.  A Multiprocessor Server-Based Scheduler for Soft Real-Time Tasks with Stochastic Execution Demand , 2011, 2011 IEEE 17th International Conference on Embedded and Real-Time Computing Systems and Applications.

[8]  James H. Anderson,et al.  Attacking the one-out-of-m multicore problem by combining hardware management with mixed-criticality provisioning , 2016, 2016 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS).

[9]  M. Campoy,et al.  Static Use of Locking Caches in Multitask Preemptive Real-Time Systems , 2001 .

[10]  A. Marti Campoy,et al.  DYNAMIC USE OF LOCKING CACHES IN MULTITASK, PREEMPTIVE REAL-TIME SYSTEMS , 2002 .

[11]  James H. Anderson,et al.  RTOS Support for Multicore Mixed-Criticality Systems , 2012, 2012 IEEE 18th Real Time and Embedded Technology and Applications Symposium.

[12]  Robert I. Davis,et al.  OUTSTANDING PAPER: Evaluation of Cache Partitioning for Hard Real-Time Systems , 2014, 2014 26th Euromicro Conference on Real-Time Systems.

[13]  D. B. Kirk,et al.  SMART (strategic memory allocation for real-time) cache design , 1989, [1989] Proceedings. Real-Time Systems Symposium.

[14]  James H. Anderson,et al.  Outstanding Paper Award: Making Shared Caches More Predictable on Multicore Platforms , 2013, 2013 25th Euromicro Conference on Real-Time Systems.

[15]  Robert I. Davis,et al.  Mixed Criticality Systems - A Review , 2015 .

[16]  Sanjoy K. Baruah,et al.  Mixed-Criticality Real-Time Scheduling for Multicore Systems , 2010, 2010 10th IEEE International Conference on Computer and Information Technology.

[17]  Ragunathan Rajkumar,et al.  A Coordinated Approach for Practical OS-Level Cache Management in Multi-core Real-Time Systems , 2013, 2013 25th Euromicro Conference on Real-Time Systems.

[18]  James H. Anderson,et al.  Fair lateness scheduling: reducing maximum lateness in G-EDF-like scheduling , 2013, Real-Time Systems.

[19]  Nuno Pereira,et al.  Static-Priority Scheduling over Wireless Networks with Multiple Broadcast Domains , 2007, RTSS 2007.

[20]  Theodore P. Baker,et al.  The cyclic executive model and Ada , 1988, Proceedings. Real-Time Systems Symposium.

[21]  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).

[22]  James H. Anderson,et al.  Tardiness Bounds under Global EDF Scheduling on a Multiprocessor , 2005, RTSS.

[23]  Lei Liu,et al.  A software memory partition approach for eliminating bank-level interference in multicore systems , 2012, 2012 21st International Conference on Parallel Architectures and Compilation Techniques (PACT).