skip to main content
10.1145/2392987.2393009acmotherconferencesArticle/Chapter ViewAbstractPublication PagesrtnsConference Proceedingsconference-collections
research-article

PRETI: partitioned real-time shared cache for mixed-criticality real-time systems

Published:08 November 2012Publication History

ABSTRACT

Multithreaded processors, in the context of real-time systems, create the opportunity to mix, on the same hardware platform, the execution of a complex real-time workload and the execution of non-critical applications. But resources sharing, inherent to multithreading, hinders the timing analysis of concurrent tasks. Such analyses are critical to real-time tasks which have timing deadlines that must be met and enforced.

In this paper, we present the PRETI, Partitioned REal-TIme shared cache scheme, a flexible, low implementation-overhead, shared cache partitioning scheme. PRETI can preclude inter-task conflicts on shared caches, and their pessimistic impact on timing estimates, by allocating private cache space to real-time tasks. Therefore, uniprocessor, i.e. unithread, worst-case execution time (WCET) estimation techniques can be used. The remaining cache space, not reserved for currently running real-time tasks, is shared by all tasks running on the processor, in particular the non-critical ones, enabling high performances for these tasks.

Experiments are presented to show that the PRETI cache scheme allows for easing and guaranteeing the schedulability of a set of real-time tasks with tight timing constraints, and enabling high performance for the non-critical tasks.

References

  1. www.recherche.enac.fr/paparazzi.Google ScholarGoogle Scholar
  2. S. Chattopadhyay and A. Roychoudhury. Unified cache modeling for WCET analysis and layout optimizations. In IEEE Real-time Systems Symposium (RTSS), 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. A. Colin and I. Puaut. A modular and retargetable framework for tree-based WCET analysis. In Euromicro Conference on Real-Time Systems (ECRTS), June 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. C. Ferdinand and R. Wilhelm. Efficient and precise cache behavior prediction for real-timesystems. Real-Time Syst., 17(2--3):131--181, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. J. Gustafsson, A. Betts, A. Ermedahl, and B. Lisper. The mälardalen WCET benchmarks - past, present and future. In Proceedings of the 10th International Workshop on Worst-Case Execution Time Analysis, July 2010.Google ScholarGoogle Scholar
  6. D. Hardy, T. Piquet, and I. Puaut. Using bypass to tighten WCET estimates for multi-core processors with shared instruction caches. In Proceedings of the 30th Real-Time Systems Symposium, Dec. 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. D. Hardy and I. Puaut. WCET analysis of multi-level non-inclusive set-associative instruction caches. In IEEE Real-Time Systems Symposium (RTSS), 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. N. Holsti, T. Långbacka, and S. Saarinen. Using a worst-case execution time tool for real-time verification of the debie software. In Proceedings of the DASIA 2000 (Data Systems in Aerospace) Conference, 2000.Google ScholarGoogle Scholar
  9. K. Jeffay, D. Stanat, and C. Martel. On non-preemptive scheduling of period and sporadic tasks. In Real-Time Systems Symposium (RTSS). Proceedings, dec 1991.Google ScholarGoogle ScholarCross RefCross Ref
  10. D. Kaseridis, M. F. Iqbal, J. Stuecheli, and L. K. John. Mcfq: Leveraging memory-level parallelism and application's cache friendliness for efficient management of quasi-partitioned last-level caches. In PACT, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. S. Kim, D. Chandra, and Y. Solihin. Fair cache sharing and partitioning in a chip multiprocessor architecture. In Proceedings of the 13th International Conference on Parallel Architectures and Compilation Techniques, PACT '04, pages 111--122, Washington, DC, USA, 2004. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. D. Kirk. Smart (strategic memory allocation for real-time) cache design. In Real Time Systems Symposium, 1989., Proceedings, Dec 1989.Google ScholarGoogle Scholar
  13. B. Lesage, D. Hardy, and I. Puaut. WCET analysis of multi-level set-associative data caches. In 9th Intl. Workshop on Worst-Case Execution Time (WCET) Analysis, 2009.Google ScholarGoogle Scholar
  14. X. Li, A. Roychoudhury, and T. Mitra. Modeling out-of-order processors for WCET analysis. Real-Time Syst., 34(3):195--227, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Y. Li, V. Suhendra, T. Mitra, and A. Roychoudhury. Timing analysis of concurrent programs running on shared cache multi-cores. In IEEE Real-time System Symposium (RTSS), 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. F. Mueller. Compiler support for software-based cache partitioning. In Proceedings of the ACM SIGPLAN 1995 workshop on Languages, compilers, & tools for real-time systems, LCTES '95. ACM, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. F. Nemer, H. Cassé, P. Sainrat, J.-P. Bahsoun, and M. De Michiel. Papabench: A free real-time benchmark. In International Workshop on Worst-Case Execution Time Analysis (WCET), Dresden, http://drops.dagstuhl.de/, july 2006.Google ScholarGoogle Scholar
  18. K. J. Nesbit, J. Laudon, and J. E. Smith. Virtual private caches. SIGARCH Comput. Archit. News, 35(2):57--68, June 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. M. Paolieri, E. Qui nones, F. J. Cazorla, G. Bernat, and M. Valero. Hardware support for WCET analysis of hard real-time multicore systems. In ISCA '09: Proceedings of the 36th annual international symposium on Computer architecture. ACM, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. M. Paolieri, E. Quiñ andones, F. Cazorla, R. Davis, and M. Valero. Ia3: An interference aware allocation algorithm for multicore hard real-time systems. In Real-Time and Embedded Technology and Applications Symposium (RTAS), 2011 17th IEEE, april 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. M. Paolieri, E. Quinones, F. Cazorla, and M. Valero. An analyzable memory controller for hard real-time cmps. Embedded Systems Letters, IEEE, 1(4):86--90, dec. 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. M. K. Qureshi and Y. N. Patt. Utility-based cache partitioning: A low-overhead, high-performance, runtime mechanism to partition shared caches. In Proceedings of the 39th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO 39, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. J. Reineke, D. Grund, C. Berg, and R. Wilhelm. Timing predictability of cache replacement policies. Real-Time Syst., 37:99--122, November 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. J. Rosen, A. Andrei, P. Eles, and Z. Peng. Bus access optimization for predictable implementation of real-time applications on multiprocessor systems-on-chip. In RTSS '07: Proceedings of the 28th IEEE International Real-Time Systems Symposium. IEEE Computer Society, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. V. Suhendra and T. Mitra. Exploring locking & partitioning for predictable shared caches on multi-cores. In DAC '08: Proceedings of the 45th annual Design Automation Conference. ACM, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Y. Tan. A prioritized cache for multi-tasking real-time systems. In 11th Workshop on Synthesis And System Integration of Mixed Information technologies (SASIMI), 2003.Google ScholarGoogle Scholar
  27. H. Theiling, C. Ferdinand, and R. Wilhelm. Fast and precise WCET prediction by separated cache and path analyses. 18(2--3):157--179, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. R. Wilhelm, J. Engblom, A. Ermedahl, N. Holsti, S. Thesing, D. Whalley, G. Bernat, C. Ferdinand, R. Heckmann, T. Mitra, F. Mueller, I. Puaut, P. Puschner, J. Staschulat, and P. Stenström. The worst-case execution-time problem: overview of methods and survey of tools. ACM Trans. Embed. Comput. Syst., 7:36:1--36:53, May 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. R. Wilhelm, D. Grund, J. Reineke, M. Schlickling, M. Pister, and C. Ferdinand. Memory hierarchies, pipelines, and buses for future architectures in time-critical embedded systems. Trans. Comp.-Aided Des. Integ. Cir. Sys., 28(7):966--978, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. A. Wolfe. Software-based cache partitioning for real-time applications. J. Comput. Softw. Eng., 2:315--327, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Y. Xie and G. H. Loh. Pipp: Promotion/insertion pseudo-partitioning of multi-core shared caches. In 36th Intl. Symp. on Computer Architecture, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. PRETI: partitioned real-time shared cache for mixed-criticality real-time systems

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Other conferences
          RTNS '12: Proceedings of the 20th International Conference on Real-Time and Network Systems
          November 2012
          216 pages
          ISBN:9781450314091
          DOI:10.1145/2392987

          Copyright © 2012 ACM

          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]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 8 November 2012

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

          Acceptance Rates

          Overall Acceptance Rate119of255submissions,47%

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader