Symbolic Worst Case Execution Times

  • Ernst Althaus
  • Sebastian Altmeyer
  • Rouven Naujoks
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6916)

Abstract

In immediate or hard real-time systems the correctness of an operation depends not only upon its logical correctness, but also on the time in which it is computed. In such systems, it is imperative that operations are performed within a given deadline because missing this deadline constitutes the failure of the complete system. Such systems include medical systems, flight control systems and other systems whose failure in responding punctually results in a high economical loss or even in the loss of human lives.

These systems are usually analyzed in a sequence of steps in which first, a so-called control flow graph (CFG) is constructed that represents possible program flows. Furthermore, bounds on the time necessary to execute small code blocks are computed along with bounds on the number of possible executions of the program loops. Depending on the type of the analysis, these loop bounds can either be numerical values or symbolic variables, corresponding to inputs given for instance by a user or by sensors. In the last step, in such a CFG the weight of a longest path with respect to the loop bounds is computed, reflecting a bound on the worst case execution time.

In this paper, we will show how to compute such symbolic longest path weights in CFGs of software with a rather regular structure like software developed for hard real-time systems. We will present the first algorithm that is capable of computing such paths in time polynomial in the size of both the input and the output. Our approach replaces the application of integer linear programming solvers in the case of purely numerical loop bounds. Furthermore, it improves upon the speed and accuracy of existing approaches in the case of symbolic bounds.

Keywords

Induction Hypothesis Problem Instance Longe Path Control Flow Graph Loop Bound 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Althaus, E., Altmeyer, S., Naujoks, R.: A new combinatorial approach to parametric path analysis. Reports of SFB/TR 14 AVACS 58, SFB/TR 14 AVACS (June 2010), http://www.avacs.org, ISSN: 1860-9821
  2. 2.
    Althaus, E., Altmeyer, S., Naujoks, R.: Precise and efficient parametric path analysis. In: Proceedings of the ACM SIGPLAN/SIGBED 2011 Conference on Languages, Compilers, and Tools for Embedded Systems, LCTES, pp. 141–150 (2011)Google Scholar
  3. 3.
    Altmeyer, S., Hümbert, C., Lisper, B., Wilhelm, R.: Parametric timing analyis for complex architectures. In: Procedeedings of the 14th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA 2008), Kaohsiung, Taiwan, pp. 367–376. IEEE Computer Society, Los Alamitos (2008)Google Scholar
  4. 4.
    Dantzig, G.B.: Linear Programming and Extensions. Princeton University Press, Princeton (1963)CrossRefMATHGoogle Scholar
  5. 5.
    Feautrier, P.: The parametric integer programming’s home, http://www.piplib.org
  6. 6.
    Gomory, R.E.: An algorithm for integer solutions to linear programming. In: Graves, R.L., Wolfe, P. (eds.) Recent Advances in Mathematical Programming, pp. 269–302. McGraw-Hill, New York (1969)Google Scholar
  7. 7.
    Holsti, N., Gustafsson, J., Bernat, G., Ballabriga, C., Bonenfant, A., Bourgade, R., Cassé, H., Cordes, D., Kadlec, A., Kirner, R., Knoop, J., Lokuciejewski, P., Merriam, N., de Michiel, M., Prantl, A., Rieder, B., Rochange, C., Sainrat, P., Schordan, M.: Wcet 2008 – report from the tool challenge 2008 – 8th intl. workshop on worst-case execution time (wcet) analysis. In: Kirner, R. (ed.) 8th Intl. Workshop on Worst-Case Execution Time (WCET) Analysis, Dagstuhl, Germany, Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, Germany (2008); also published in print by Austrian Computer Society (OCG) under ISBN 978-3-85403-237-3Google Scholar
  8. 8.
    Li, Y.-T.S., Malik, S.: Performance analysis of embedded software using implicit path enumeration. In: DAC 1995: Proceedings of the 32nd Annual ACM/IEEE Design Automation Conference, pp. 456–461. ACM, New York (1995)Google Scholar
  9. 9.
    Lisper, B.: Fully automatic, parametric worst-case execution time analysis. In: Third Internation Workshop on Worst-Case Execution Time Analysis, pp. 77–80 (July 2003)Google Scholar
  10. 10.
    Tan, L.: The worst case execution time tool challenge 2006: Technical report for the external test. In: Proc. 2nd International Symposium on Leveraging Applications of Formal Methods, ISOLA 2006 (2006)Google Scholar
  11. 11.
    Theiling, H.: ILP-based Interprocedural Path Analysis. In: Proceedings of the Workshop on Embedded Software, Grenoble, France (October 2002)Google Scholar
  12. 12.
    Wilhelm, R., Engblom, J., Ermedahl, A., Holsti, N., Thesing, S., Whalley, D., Bernat, G., Ferdinand, C., Heckmann, R., Mitra, T., Mueller, F., Puaut, I., Puschner, P., Staschulat, J., Stenström, P.: The worst-case execution-time problem—overview of methods and survey of tools. ACM Trans. Embed. Comput. Syst. 7(3), 1–53 (2008)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Ernst Althaus
    • 1
  • Sebastian Altmeyer
    • 2
  • Rouven Naujoks
    • 3
  1. 1.Johannes-Gutenberg-Universität Mainz and Max-Planck-Institut für InformatikGermany
  2. 2.Saarland UniversityGermany
  3. 3.Max-Planck-Institut für InformatikGermany

Personalised recommendations