skip to main content
research-article

A Model Checking Based Approach to Bounding Worst-Case Execution Time for Multicore Processors

Published:01 August 2012Publication History
Skip Abstract Section

Abstract

As multicore processors are increasingly adopted in industry, it has become a great challenge to accurately bound the worst-case execution time (WCET) for real-time systems running on multicore chips. This is particularly true because of the inter-thread interferences in accessing shared resources on multicores, such as shared L2 caches, which can significantly affect the performance but are very difficult to be estimated statically.

This article proposes an approach to analyzing WCET for multicore processors with shared L2 instruction caches by using a model checking based method. We model each concurrent real-time thread, including the inter-thread cache interferences with a PROMELA process, and derive the WCET by using a binary search algorithm. To reduce the state explosion problem, we propose several techniques for reducing the memory consumption by exploiting domain-specific information. Our experiments indicate that compared to the static analysis technique based on extended ILP (integer linear programming), our approach improves the tightness of WCET estimation by more than 31.1% for the benchmarks we studied. However, due to the inherent complexity of multicore timing analysis and the state explosion problem, the model checking based approach currently can only work with small real-time kernels for dual-core processors.

References

  1. Akesson, B., Goosens, K., and Ringhofer, M. 2007. Predator: A predictable sdram memory controller. In Proceedings of the International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS). 251--256. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Alur, R. and Dill, D. L. 1990. Automata for modeling real-time systems. In Proceedings of the 7th International Colloquium on Automata, Languages and Programming. Lecture Notes in Computer Science, vol. 443, Springer, Berlin, 322--335. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Arnold, R., Muller, F., Whalley, D., and Harmon, M. 1994. Bounding worst-case instruction cache performance. In Proceedings of the IEEE Real-Time Systems Symposium. 172--181.Google ScholarGoogle Scholar
  4. Burger, D. and Austin, T. M. 1997. The simplescalar tool set, version 2.0. SIGARCH Comput. Archit. News 25, 3, 13--25. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Clark, E. M., Grumberg, O., and Long, D. E. 1994. Model checking and abstraction. ACM Trans. Program. Lang. Syst. 16, 5, 1512--1542. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Clarke, E. M. and Schlingloff, B.-H. 2001. Model Checking, Handbook of Automated Reasoning. MIT Press, Cambridge, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. CPLEX. 2010. Homepage of cplex. http://www.ilog.com/products/cplex.Google ScholarGoogle Scholar
  8. Healy, C., Whalley, D., and Harmon, M. 1995. Integrating the timing analysis of pipelining and instruction caching. In Proceedings of the IEEE Real-Time Systems Symposium. 288--297. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Holzmann, G. 1997. The model checker spin. IEEE Trans. Softw. Eng. 23, 5, 279--295. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Huber, B. and Schoeberl, M. 2009. Comparison of implicit path enumeration and model checking based wcet analysis. In Proceedings of the 9th International Workshop on Worst-Case Execution Time (WCET) Analysis.Google ScholarGoogle Scholar
  11. Li, Y. S. and Malik, S. 1995. Performance analysis of embedded software using implicit path enumeration. In Proceedings of the 32nd ACM/IEEE Design Automation Conference. 456--461. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Li, Y. S. and Malik, S. 1996. Cache modeling and path analysis for real-time software. In Proceedings of the 17th IEEE Real-Time Systems Symposium. 254--264. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Liu, C., Sivasubramaniam, A., and Kandemir, M. 2004. Organizing the last line of defense before hitting the memory wall for cmps. In Proceedings of the 10th International Symposium on High Performance Computer Architecture. 176--185. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Lv, M., Gu, Z., Guan, N., Deng, Q., and Yu, G. 2008. Performance comparison of techniques on static path analysis of wcet. In Proceedings of IEEE/IFIP International Conference on Embedded and Ubiquitous Computing. 104--111. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Metzner, A. 2004. Why model checking can improve wcet analysis. In Proceedings of the 16th International Conference on Computer Aided Verification. Lecture Notes in Computer Science, vol. 3114, Springer-Verlag, Berlin Heidelberg.Google ScholarGoogle Scholar
  16. Mohalik, S., Rajeev, A., Dixit, M., Ramesh, S., Suman, P., Pandya, P., and Jiang, S. 2008. Model checking based analysis of end-to-end latency in embedded, real-time systems with clock drifts. In Proceedings of the IEEE/ACM Design Automation Conference (DAC). 296--299. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Ottosson, G. and Sjodin, M. 1997. Worst-case execution time analysis for modern hardware architectures. In Proceedings of the ACM SIGPLAN Workshop on Languages.Google ScholarGoogle Scholar
  18. Paolieri, M., Quiñones, E., Cazorla, F., Bernat, G., and Valero, M. 2009. Hardware support for wcet analysis of hard real-time multicore systems. In Proceedings of the 36th Annual International Symposium on Computer Architecture (ISCAS’09). 57--68. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Pnueli, A. 1977. The temporal logic of programs. In Proceedings of the 18th Annual IEEE Symposium on Foundations of Computer Science. 46--57. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Rosen, J., Andrei, A., Eles, P., and Peng, Z. 2007. Bus access optimization for predictable implementation of real-time applications on multiprocessor systems-on-chip. In Proceedings of the 28th IEEE International Real-Time Systems Symposium (RTSS). 49--60. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Schliecker, S., Negrean, M., Nicolescu, G., Paulin, P., and Ernst, R. 2008. Reliable performance analysis of a multicore multithreaded system-on-chip. In Proceedings of the International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS). 161--166. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. SPIN 2010. Homepage of spin. http://spinroot.com/spin/whatispin.html.Google ScholarGoogle Scholar
  23. Stappert, F., Ermedahl, A., and Engblom, J. 2001. Efficient longest executable path search for programs with complex flows and pipeline effects. In Proceedings of the International Conference on Compilers, Architecture, and Synthesis for Embedded Systems. 132--140. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Stohr, J., Bulow, A., and Farber, G. 2005. Bounding worst-case access times in modern multiprocessor systems. In Proceedings of the 17th Euromicro Conference on Real-Time Systems (ECRTS’05). 189--198. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Trimaran. 2010. Homepage of trimaran. http://www.trimaran.org/.Google ScholarGoogle Scholar
  26. Wang, F. 2004. Formal verification of timed systems: A survey and perspective. Proc. IEEE 92, 8, 1283--1305.Google ScholarGoogle ScholarCross RefCross Ref
  27. Wilhelm, R. 2003. Why ai+ilp is good for wcet, but mc is not, nor ilp alone. In Verification, Model Checking and Abstract Interpretation (YMCAI). Lecture Notes in Computer Science, vol. 2937, Springer, Berlin.Google ScholarGoogle Scholar
  28. Wilhelm, R., Engblom, J., Ermedahl, A., Holsti, N., Thesing, S., Whalley, D., Bernat G., Ferdinand, C., Heckman, R., Mitra, T., Mueller, F., Puaut, I., Puschner, P., Staschulat, J., and Stenstrom, P. 2008. The worst case execution time problem---Overview of methods and survey of tools. ACM Trans. Embed. Comput. Syst. 7, 36. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Yan, J. and Zhang, W. 2008. Wcet analysis for multicore processors with shared instruction caches. In Proceedings of the IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS). 80--89. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Yan, J. and Zhang, W. 2009. Accurately estimating worst-case inter-thread cache interferences and wcet for multicore processors. In Proceedings of the IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA). 455--463. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A Model Checking Based Approach to Bounding Worst-Case Execution Time for Multicore Processors

        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

        • Published in

          cover image ACM Transactions on Embedded Computing Systems
          ACM Transactions on Embedded Computing Systems  Volume 11, Issue S2
          Special Section on CAPA'09, Special Section on WHS'09, and Special Section VCPSS' 09
          August 2012
          396 pages
          ISSN:1539-9087
          EISSN:1558-3465
          DOI:10.1145/2331147
          Issue’s Table of Contents

          Copyright © 2012 ACM

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 1 August 2012
          • Revised: 1 December 2010
          • Accepted: 1 December 2010
          • Received: 1 July 2009
          Published in tecs Volume 11, Issue S2

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Research
          • Refereed

        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!