skip to main content
10.1145/3489517.3530613acmconferencesArticle/Chapter ViewAbstractPublication PagesdacConference Proceedingsconference-collections
research-article

Precise and scalable shared cache contention analysis for WCET estimation

Published: 23 August 2022 Publication History

Abstract

Worst-Case Execution Time (WCET) analysis for real-time tasks must precisely predict cache hit/miss of memory accesses. While bringing great performance benefits, multi-core processors significantly complicate the cache analysis problem due to the shared cache contentions among different cores. Existing methods pessimistically consider that memory references of parallel executing tasks will contend with each other as long as they are mapped to the same cache line. However, in reality, numerous shared cache contentions are mutually exclusive, due to the partial orders among the programs executed in parallel. The presence of shared cache contentions greatly exacerbates the computational complexity of the WCET computation, as finding the longest path needs exploring an exponentially large partial ordering space. In this paper, we propose a quantitative method with O(n2) time complexity to precisely estimate the worst-case extra execution time (WCEET) caused by shared cache contentions. The proposed method can be easily integrated into the abstract-interpretation based WCET estimation framework. Experiments with MRTC benchmarks show that our method can averagely tighten the WCET estimation by 13% without sacrificing the analysis efficiency.

References

[1]
Sebastian Altmeyer and Claire Burguiere. 2009. A new notion of useful cache block to improve the bounds of cache-related preemption delay. In ECRTS'09. 21st Euromicro Conference on Real-Time Systems. IEEE, 109--118.
[2]
Sudipta Chattopadhyay, Lee Kee Chong, Abhik Roychoudhury, Timon Kelter, Peter Marwedel, and Heiko Falk. 2014. A unified WCET analysis framework for multicore platforms. ACM Transactions on Embedded Computing Systems (TECS) 13, 4s (2014), 124.
[3]
Sudipta Chattopadhyay and Abhik Roychoudhury. 2009. Unified cache modeling for WCET analysis and layout optimizations. In 2009 30th IEEE Real-Time Systems Symposium. IEEE, 47--56.
[4]
Patrick Cousot and Radhia Cousot. 1977. Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages. ACM, 238--252.
[5]
Jan Gustafsson, Adam Betts, Andreas Ermedahl, and Björn Lisper. 2010. The Mälardalen WCET benchmarks: Past, present and future. In OASIcs-OpenAccess Series in Informatics, Vol. 15. Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik.
[6]
Damien Hardy and Isabelle Puaut. 2008. WCET analysis of multi-level non-inclusive set-associative instruction caches. In RTSS, 2008,IEEE. IEEE, 456--466.
[7]
Bach Khoa Huynh, Lei Ju, and Abhik Roychoudhury. 2011. Scope-aware data cache analysis for WCET estimation. In 17th IEEE Real-Time and Embedded Technology and Applications Symposium. IEEE, 203--212.
[8]
Karthik Lakshmanan, Shinpei Kato, and Ragunathan Rajkumar. 2010. Scheduling parallel real-time tasks on multi-core processors. In 2010 31st IEEE Real-Time Systems Symposium. IEEE, 259--268.
[9]
Xianfeng Li, Yun Liang, Tulika Mitra, and Abhik Roychoudhury. 2007. Chronos: A timing analyzer for embedded software. Science of Computer Programming 69, 1--3 (2007), 56--67.
[10]
Yun Liang, Huping Ding, Tulika Mitra, Abhik Roychoudhury, Yan Li, and Vivy Suhendra. 2012. Timing analysis of concurrent programs running on shared cache multi-cores. Real-Time Systems 48, 6 (2012), 638--680.
[11]
Mingsong Lv, Nan Guan, Jan Reineke, Reinhard Wilhelm, and Wang Yi. 2016. A survey on static cache analysis for real-time systems. Leibniz Transactions on Embedded Systems 3, 1 (2016), 05--1.
[12]
Rathijit Sen and YN Srikant. 2007. WCET estimation for executables in the presence of data caches. In Proceedings of the 7th ACM & IEEE international conference on Embedded software. ACM, 203--212.
[13]
Tyler Sondag and Hridesh Rajan. 2010. A more precise abstract domain for multi-level caches for tighter wcet analysis. In Real-Time Systems Symposium (RTSS), 2010 IEEE 31st. IEEE, 395--404.
[14]
Vivy Suhendra, Tulika Mitra, Abhik Roychoudhury, and Ting Chen. 2006. Efficient detection and exploitation of infeasible paths for software timing analysis. In Proceedings of the 43rd annual Design Automation Conference. ACM, 358--363.
[15]
Reinhard Wilhelm, Jakob Engblom, Andreas Ermedahl, Niklas Holsti, Stephan Thesing, David Whalley, Guillem Bernat, Christian Ferdinand, Reinhold Heckmann, Tulika Mitra, et al. 2008. The worst-case execution-time problem---overview of methods and survey of tools. ACM Transactions on Embedded Computing Systems (TECS) 7, 3 (2008), 36.
[16]
Jun Yan and Wei Zhang. 2008. WCET analysis for multi-core processors with shared L2 instruction caches. In Real-Time and Embedded Technology and Applications Symposium, 2008. RTAS. IEEE. IEEE, 80--89.
[17]
Wei Zhang, Fan Gong, Lei Ju, Nan Guan, and Zhiping Jia. 2017. Scope-Aware Useful Cache Block Analysis for Data Cache Related Preemption Delay. In RealTime and Embedded Technology and Applications Symposium (RTAS). IEEE, 63--74.
[18]
Wei Zhang, Nan Guan, Lei Ju, and Weichen Liu. 2018. Analyzing Data Cache Related Preemption Delay With Multiple Preemptions. IEEE Trans. on Computer-Aided Design of Integrated Circuits and Systems 37, 11 (2018), 2255--2265.
[19]
Wei Zhang and Jun Yan. 2009. Accurately estimating worst-case execution time for multi-core processors with shared direct-mapped instruction caches. In 15th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, 2009. RTCSA. IEEE, 455--463.
[20]
Zhenkai Zhang and Xenofon Koutsoukos. 2015. Precise Multi-level Inclusive Cache Analysis for WCET Estimation. In IEEE Real-time Systems Symposium.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
DAC '22: Proceedings of the 59th ACM/IEEE Design Automation Conference
July 2022
1462 pages
ISBN:9781450391429
DOI:10.1145/3489517
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 23 August 2022

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. WCET
  2. real-time systems
  3. shared cache contention

Qualifiers

  • Research-article

Funding Sources

  • Shandong Provincial Natural Science Foundation
  • Natural Science Foundation of China

Conference

DAC '22
Sponsor:
DAC '22: 59th ACM/IEEE Design Automation Conference
July 10 - 14, 2022
California, San Francisco

Acceptance Rates

Overall Acceptance Rate 1,770 of 5,499 submissions, 32%

Upcoming Conference

DAC '25
62nd ACM/IEEE Design Automation Conference
June 22 - 26, 2025
San Francisco , CA , USA

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)94
  • Downloads (Last 6 weeks)8
Reflects downloads up to 13 Jan 2025

Other Metrics

Citations

Cited By

View all

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media