skip to main content
research-article

Sensitivity of cache replacement policies

Published:21 March 2013Publication History
Skip Abstract Section

Abstract

The sensitivity of a cache replacement policy expresses to what extent the execution history may influence the number of cache hits and misses during program execution. We present an algorithm to compute the sensitivity of a replacement policy. We have implemented this algorithm in a tool called Relacs that can handle a large class of replacement policies including LRU, FIFO, PLRU, and MRU. Sensitivity properties obtained with Relacs demonstrate that the execution history can have a strong impact on the number of cache hits and misses if FIFO, PLRU, or MRU is used. A simple model of execution time is used to evaluate the impact of cache sensitivity on measured execution times. The model shows that measured execution times may strongly underestimate the worst-case execution time for FIFO, PLRU, and MRU.

References

  1. Ahuja, R. K., Magnanti, T. L., and Orlin, J. B. 1993. Network Flows: Theory, Algorithms, and Applications. Prentice-Hall, Inc., Upper Saddle River, NJ. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Al-Zoubi, H., Milenkovic, A., and Milenkovic, M. 2004. Performance evaluation of cache replacement policies for the SPEC CPU2000 benchmark suite. In Proceedings of the ACM 42nd Annual Southeast Regional Conference. ACM Press, New York, NY, 267--272. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Berg, C. 2006. PLRU cache domino effects. In Proceedings of the 6th International Workshop on Worst-Case Execution Time (WCET) Analysis. F. Mueller, Ed., Internationales Begegnungs- und Forschungszentrum für Informatik (IBFI), Schloss Dagstuhl, Germany.Google ScholarGoogle Scholar
  4. Bernat, G., Colin, A., and Petters, S. M. 2002. WCET analysis of probabilistic hard real-time systems. In Proceedings of the 23rd IEEE Real-Time Systems Symposium (RTSS'02). IEEE Computer Society, Los Alamitos, CA, 279. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Deverge, J.-F. and Puaut, I. 2005. Safe measurement-based WCET estimation. In Proceedings of the 5th International Workshop on Worst-Case Execution Time (WCET) Analysis. R. Wilhelm, Ed., Internationales Begegnungs- und Forschungszentrum für Informatik (IBFI), Schloss Dagstuhl, Germany.Google ScholarGoogle Scholar
  6. Eklöv, D., Nikoleris, N., Black-Schaffer, D., and Hagersten, E. 2011. Cache pirating: Measuring the curse of the shared cache. In Proceedings of ICPP. 165--175. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Engblom, J. and Jonsson, B. 2002. Processor pipelines and their properties for static WCET analysis. In Proceedings of the 2nd International Conference on Embedded Software (EMSOFT'02). Springer-Verlag, 334--348. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Ferdinand, C., Heckmann, R., Langenbach, M., Martin, F., Schmidt, M., Theiling, H., Thesing, S., and Wilhelm, R. 2001. Reliable and precise WCET determination for a real-life processor. In Proceedings of the Embedded Software Workshop. Vol. 2211, 469--485. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Heckmann, R., Langenbach, M., Thesing, S., and Wilhelm, R. 2003. The influence of processor architecture on the design and the results of WCET tools. Proc. IEEE 91, 7, 1038--1054. Google ScholarGoogle ScholarCross RefCross Ref
  10. Hennessy, J. L. and Patterson, D. A. 1996. Computer Architecture: A Quantitative Approach 2nd Ed., Morgan Kaufmann. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Lawler, E. 1966. Optimal cycles in doubly weighted linear graphs. In Proceedings of the International Symposium on Theory of Graphs. 209--213.Google ScholarGoogle Scholar
  12. Petters, S. M. 2002. Worst case execution time estimation for advanced processor architectures. Ph.D. thesis, Technische Universität München, Munich, Germany.Google ScholarGoogle Scholar
  13. Puaut, I. and Decotigny, D. 2002. Low-complexity algorithms for static cache locking in multitasking hard real-time systems. In Proceedings of the 23rd IEEE Real-Time Systems Symposium (RTSS'02). IEEE Computer Society, Los Alamitos, CA, 114. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Reineke, J. 2008. Caches in WCET analysis. Ph.D. thesis, Universität des Saarlandes.Google ScholarGoogle Scholar
  15. Reineke, J. and Grund, D. 2008. Relative competitive analysis of cache replacement policies. In Proceedings of the ACM SIGPLAN-SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems. ACM, New York, NY, 51--60. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Reineke, J., Grund, D., Berg, C., and Wilhelm, R. 2007. Timing predictability of cache replacement policies. Real-Time Syst. 37, 2, 99--122. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Schlickling, M. and Pister, M. 2010. Semi-automatic derivation of timing models for WCET analysis. In Proceedings of the ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems. ACM, 67--76. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Silberschatz, A., Galvin, P. B., and Gagne, G. 2005. Operating System Concepts. Vol. 2nd. Addison-Wesley. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Theiling, H., Ferdinand, C., and Wilhelm, R. 2000. Fast and precise WCET prediction by separate cache and path analyses. Real-Time Syst. 18, 2/3. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Vera, X., Lisper, B., and Xue, J. 2003. Data cache locking for higher program predictability. SIGMETRICS Perform. Eval. Rev. 31, 1, 272--282. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Wenzel, I. 2006. Measurement-based timing analysis of superscalar processors. Ph.D. thesis, Technische Universität Wien, Institut für Technische Informatik.Google ScholarGoogle Scholar
  22. Wilhelm, R., Engblom, J., Ermedahl, A., Holsti, N., Thesing, S., Whalley, D. B., Bernat, G., Ferdinand, C., Heckmann, R., Mitra, T., Mueller, F., Puaut, I., Puschner, P. P., Staschulat, J., and Stenström, P. 2008. The worst-case execution-time problem - overview of methods and survey of tools. ACM Trans. Embed. Comput. Syst. 7, 3. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Wilhelm, R., Grund, D., Reineke, J., Schlickling, M., Pister, M., and Ferdinand, C. 2009. Memory hierarchies, pipelines, and buses for future architectures in time-critical embedded systems. IEEE Trans. CAD Integrat. Circuits Syst. 28, 7, 966--978. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Sensitivity of cache replacement policies

        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

        Full Access

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!