Analyzing Data Cache Related Preemption Delay With Multiple Preemptions

Timing analysis of real-time tasks under preemptive scheduling must take cache-related preemption delay (CRPD) into account. Typically, a task may be preempted more than once during the execution in each period. To bound the total CRPD of <inline-formula> <tex-math notation="LaTeX">${k}$ </tex-math></inline-formula> preemptions, existing CRPD analysis techniques estimate the CRPD at each program point, and use the sum of the <inline-formula> <tex-math notation="LaTeX">${k}$ </tex-math></inline-formula>-largest CRPD among all program points as the total CRPD upper bound. In this paper, we disclose that the above-mentioned approach, although works well for instruction caches, leads to significant overestimation when dealing with data caches. This is because on data caches, the CRPD of preemptions at different program points may have correlations, and the total CRPD of multiple preemptions is in general smaller than the simple sum of the worst-case CRPD of each preemption. To address this problem, we propose a new technique to efficiently explore the correlation among the CRPD of different preemptions, and thus more precisely calculate the total CRPD. Experiments with benchmark programs show that the proposed technique leads to substantially tighter total CRPD estimation with multiple preemptions comparing with the state-of-the-art.

[1]  Siddhartha Chatterjee,et al.  Exact analysis of the cache behavior of nested loops , 2001, PLDI '01.

[2]  Frank Mueller,et al.  Tightening the Bounds on Feasible Preemption Points , 2006, 2006 27th IEEE International Real-Time Systems Symposium (RTSS'06).

[3]  Wei Zhang,et al.  Scope-Aware Useful Cache Block Analysis for Data Cache Related Preemption Delay , 2017, 2017 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS).

[4]  Tulika Mitra,et al.  Accurate estimation of cache-related preemption delay , 2003, First IEEE/ACM/IFIP International Conference on Hardware/ Software Codesign and Systems Synthesis (IEEE Cat. No.03TH8721).

[5]  Abhik Roychoudhury,et al.  Scope-Aware Data Cache Analysis for WCET Estimation , 2011, 2011 17th IEEE Real-Time and Embedded Technology and Applications Symposium.

[6]  Sharad Malik,et al.  Cache miss equations: a compiler framework for analyzing and tuning memory behavior , 1999, TOPL.

[7]  Robert I. Davis,et al.  Improved cache related pre-emption delay aware response time analysis for fixed priority pre-emptive systems , 2011, 2011 IEEE 32nd Real-Time Systems Symposium.

[8]  Hiroshi Nakashima,et al.  An efficient search algorithm of worst-case cache flush timings , 2005, 11th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA'05).

[9]  Sang Lyul Min,et al.  Analysis of cache-related preemption delay in fixed-priority preemptive scheduling , 1998, 17th IEEE Real-Time Systems Symposium.

[10]  Robert I. Davis,et al.  Integrating cache related pre-emption delay analysis into EDF scheduling , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[11]  Rolf Ernst,et al.  Scalable precision cache analysis for real-time software , 2007, TECS.

[12]  Frank Mueller,et al.  Bounding worst-case data cache behavior by analytically deriving cache reference patterns , 2005, 11th IEEE Real Time and Embedded Technology and Applications Symposium.

[13]  Jingling Xue,et al.  Let's study whole-program cache behaviour analytically , 2002, Proceedings Eighth International Symposium on High Performance Computer Architecture.

[14]  Chang-Gun Lee,et al.  Analysis of Cache-Related Preemption Delay in Fixed-Priority Preemtive Scheduling , 1998, IEEE Trans. Computers.

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

[16]  Yudong Tan,et al.  Integrated Intra- and Inter-task Cache Analysis for Preemptive Multi-tasking Real-Time Systems , 2004, SCOPES.

[17]  Wang Yi,et al.  WCET Analysis with MRU Caches: Challenging LRU for Predictability , 2012, IEEE Real-Time and Embedded Technology and Applications Symposium.

[18]  Robert I. Davis,et al.  Integrating Cache-Related Pre-Emption Delays into Analysis of Fixed Priority Scheduling with Pre-Emption Thresholds , 2014, 2014 IEEE Real-Time Systems Symposium.

[19]  Peter Marwedel,et al.  A synergetic approach to accurate analysis of cache-related preemption delay , 2011, 2011 Proceedings of the Ninth ACM International Conference on Embedded Software (EMSOFT).