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

WCET squeezing: on-demand feasibility refinement for proven precise WCET-bounds

Published:16 October 2013Publication History

ABSTRACT

The Worst-Case Execution Time (WCET) computed by a WCET analyzer is usually not tight, leaving a gap between the actual and the computed WCET of a program. In this article we present a novel on-demand WCET feasibility refinement technique, called WCET Squeezing, for minimizing this gap.

WCET Squeezing provides conceptually new means for addressing the classical problem of WCET computation, by deriving a WCET bound that comes as close as possible to the actual one. WCET Squeezing is an anytime algorithm, that is, it can be stopped at any time without violating the soundness of its results. This anytime property allows to apply WCET Squeezing not only for deriving precise WCET bounds but to also prove additional timing constraints over the program. Namely, WCET Squeezing can be used to guarantee that a program is fast enough by ensuring that the WCET of the program is below some required limit. If the initially computed WCET of the program is above this limit, WCET Squeezing can be stopped as soon as the squeezed WCET of the program is below the limit (proving the program meets the required timing constraint), or if the squeezed WCET is tight but above the given limit (proving the program cannot meet the timing constraint). WCET Squeezing can also be used until a given time budget is exhausted to compute a tight(er) WCET bound for a program. These new applications of WCET Squeezing are out of the scope of traditional WCET analyzers.

WCET Squeezing combines symbolic program execution with the Implicit Path Enumeration Technique (IPET) for computing a precise WCET bound. WCET Squeezing is applicable as a post-process to any WCET analyzer which encodes the IPET problem as an Integer Linear Program (ILP). We implemented our method in the r-TuBound toolchain and evaluated our implementation on a set examples taken from the Mälardalen WCET benchmark suite. Our experiments demonstrate that WCET Squeezing can significantly tighten the WCET bounds of programs. Moreover, the derived WCET bounds are proven to be precise at a moderate computational cost.

References

  1. C. Ballabriga, H. Cassé, C. Rochange, and P. Sainrat. OTAWA: an Open Toolbox for Adaptive WCET Analysis. In Proc. of IFIP Workshop -- SEUS, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. H. J. Bang, T. H. Kim, and S. D. Cha. An Iterative Refinement Framework for Tighter Worst-Case Execution Time Calculation. In Proc. of ISORC, pages 365--372, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. C. Barrett, A. Stump, C. Tinelli, S. Boehme, D. Cok, D. Deharbe, B. Dutertre, P. Fontaine, V. Ganesh, A. Griggio, J. Grundy, P. Jackson, A. Oliveras, S. Krstić, M. Moskal, L. D. Moura, R. Sebastiani, T. D. Cok, and J. Hoenicke. C.: The SMT-LIB Standard: Version 2.0. Technical report, 2010.Google ScholarGoogle Scholar
  4. M. Berkelaar, K. Eikland, and P. Notebaert. lp_solve P. Software, 2004. Available at http://lpsolve.sourceforge.net/5.5/.Google ScholarGoogle Scholar
  5. A. Biere, J. Knoop, L. Kovács, and J. Zwirchmayr. SmacC: A Retargetable Symbolic Execution Engine. In Proc. of ATVA, pages 482--486, 2013.Google ScholarGoogle ScholarCross RefCross Ref
  6. A. Biere, J. Knoop, L. Kovács, and J. Zwirchmayr. The Auspicious Couple: Symbolic Execution and WCET Analysis. In Proc. of WCET, pages 53--63, 2013.Google ScholarGoogle Scholar
  7. R. Bodík, R. Gupta, and M. L. Soffa. Refining Data Flow Information Using Infeasible Paths. SIGSOFT Softw. Eng. Notes, 22(6):361--377, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. F. Brandner and A. Jordan. Refinement of Worst-Case Execution Time Bounds by Graph Pruning. 2013. Under submission.Google ScholarGoogle Scholar
  9. C. Cadar, D. Dunbar, and D. R. Engler. KLEE: Unassisted and Automatic Generation of High-Coverage Tests for Complex Systems Programs. In Proc. of OSDI, pages 209--224, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. C. Cadar, V. Ganesh, P. M. Pawlowski, D. L. Dill, and D. R. Engler. EXE: Automatically Generating Inputs of Death. ACM Trans. Inf. Syst. Secur., 12(2):10:1--10:38, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. P. Cerny, T. Henzinger, and A. Radhakrishna. Quantitative Abstraction Refinement. In Proc. of POPL, pages 115--128, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. E. M. Clarke, O. Grumberg, S. Jha, Y. Lu, and H. Veith. Counterexample-Guided Abstraction Refinement. In Proc. of CAV, pages 154--169, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. P. Cousot and R. Cousot. Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints. In In Proc.of POPL, pages 238--252, 1977. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. C. Cullmann and F. Martin. Data-flow based detection of loop bounds. In Proc. of WCET, 2007.Google ScholarGoogle Scholar
  15. A. Ermedahl, J. Fredriksson, J. Gustafsson, and P. Altenbernd. Deriving the worst-case execution time input values. In Proc. of ECRTS, pages 45--54, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. J. Gustafsson. SWEET: SWEdish Execution Time tool. http://www.mrtc.mdh.se/projects/wcet/sweet.html, 2001.Google ScholarGoogle Scholar
  17. J. Gustafsson, A. Betts, A. Ermedahl, and B. Lisper. The Mälardalen WCET Benchmarks: Past, Present And Future. In Proc. of WCET, pages 136--146, 2010.Google ScholarGoogle Scholar
  18. J. Gustafsson, A. Ermedahl, C. Sandberg, and B. Lisper. Automatic Derivation of Loop Bounds and Infeasible Paths for WCET Analysis Using Abstract Execution. In Proc. of RTSS, pages 57--66, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. A. Holzer, C. Schallhart, M. Tautschnig, and H. Veith. FShell: Systematic Test Case Generation for Dynamic Analysis and Measurement. In Proc. of CAV, pages 209--213, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. D. Kebbal and P. Sainrat. Combining Symbolic Execution and Path Enumeration in Worst-Case Execution Time Analysis. In Proc. of WCET, 2006.Google ScholarGoogle Scholar
  21. R. Kirner. The WCET Analysis Tool CalcWcet167. In Proc. of ISoLA, pages 158--172, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. J. Knoop, L. Kovács, and J. Zwirchmayr. r-TuBound: Loop Bounds for WCET Analysis. In Proc. of LPAR, pages 435--444, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. P. Lokuciejewski and P. Marwedel. Combining Worst-Case Timing Models, Loop Unrolling, and Static Loop Analysis for WCET Minimization. In Proc. of ECRTS, pages 35--44, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. S. S. Muchnick. Advanced Compiler Design and Implementation. Morgan Kaufmann Publishers Inc., 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. F. Nielson, H. R. Nielson, and C. Hankin. Principles of Program Analysis. Springer-Verlag New York Inc., 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. P. P. Puschner and A. V. Schedl. Computing Maximum Task Execution Times -- A Graph-Based Approach. Real-Time Systems, 13(1):67--91, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. S. S. Skiena. The Algorithm Design Manual. Springer Inc., 2nd edition, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. I. Stein and F. Martin. Analysis of Path Exclusion at the Machine Code Level. In Proc. of WCET, 2007.Google ScholarGoogle Scholar

Index Terms

  1. WCET squeezing: on-demand feasibility refinement for proven precise WCET-bounds

      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 '13: Proceedings of the 21st International conference on Real-Time Networks and Systems
        October 2013
        298 pages
        ISBN:9781450320580
        DOI:10.1145/2516821

        Copyright © 2013 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 the author(s) 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: 16 October 2013

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        RTNS '13 Paper Acceptance Rate29of62submissions,47%Overall Acceptance Rate119of255submissions,47%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader