skip to main content
10.1145/1361096.1361100acmconferencesArticle/Chapter ViewAbstractPublication PagesscopesConference Proceedingsconference-collections
research-article

WCET-driven, code-size critical procedure cloning

Published:13 March 2008Publication History

ABSTRACT

In the domain of the worst-case execution time (WCET) analysis, loops are an inherent source of unpredictability and loss of precision since the determination of tight and safe information on the number of loop iterations is a difficult task. In particular, data-dependent loops whose iteration counts depend on function parameters can not be precisely handled by a timing analysis. Procedure Cloning can be exploited to make these loops explicit within the source code allowing a highly precise WCET analysis.

In this paper we extend the standard Procedure Cloning optimization by WCET-aware concepts with the objective to improve the tightness of the WCET estimation. Our novel approach is driven by WCET information which successively eliminates code structures leading to overestimated timing results, thus making the code more suitable for the analysis. In addition, the code size increase during the optimization is monitored and large increases are avoided.

The effectiveness of our optimization is shown by tests on real-world benchmarks. After performing our optimization, the estimated WCET is reduced by up to 64.2% while the employed code transformations yield an additional code size increase of 22.6% on average. In contrast, the average-case performance being the original objective of Procedure Cloning showed a slight decrease.

References

  1. AbsInt Angewandte Informatik GmbH. CRL Version 2. http://www.absint.com/artist2/doc/crl2, 2007.Google ScholarGoogle Scholar
  2. AbsInt Angewandte Informatik GmbH. Worst-Case Execution Time Analyzer aiT for TriCore. 2007.Google ScholarGoogle Scholar
  3. D. F. Bacon, S. L. Graham, and O. J. Sharp. Compiler transformations for high-performance computing. ACM Comput. Surv., 26(4):345--420, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. K. D. Cooper, M. W. Hall, and K. Kennedy. A Methodology for Procedure Cloning. Computer Languages, 19(2):105--117, 1993.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. H. Falk, P. Lokuciejewski, and H. Theiling. Design of a WCET-Aware C Compiler. In 4th IEEE Workshop on Embedded Systems for Real-Time Multimedia, October 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. H. Falk and P. Marwedel. Control Flow driven Splitting of Loop Nests at the Source Code Level. In DATE '03: Proceedings of the conference on Design, Automation and Test in Europe, page 10410, Munich, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. H. Falk and M. Schwarzer. Loop Nest Splitting for WCET-Optimization and Predictability Improvement. In 4th IEEE Workshop on Embedded Systems for Real-Time Multimedia, October 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. J. Gustafsson, A. Ermedahl, C. Sandberg, and B. Lisper. Automatic derivation of loop bounds and infeasible paths for wcet analysis using abstract execution. In RTSS '06: Proceedings of the 27th IEEE International Real-Time Systems Symposium, pages 57--66, Washington, DC, USA, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. M. Guthaus, J. Ringenberg, D. Ernst, T. Austin, T. Mudge, and T. Brown. Mibench: A free, commercially representative embedded benchmark suite. In WWC '01: Proceedings of the Workload Characterization, 2001. WWC-4. 2001 IEEE International Workshop on, pages 3--14, Washington, DC, USA, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Informatik Centrum Dortmund. ICD-C Compiler framework. http://www.icd.de/es/icd-c, 2007.Google ScholarGoogle Scholar
  11. ICD Low Level Intermediate Representation backend infrastructure (LLIR) -- Developer Manual. Informatik Centrum Dortmund, 2007.Google ScholarGoogle Scholar
  12. S. Lee, J. Lee, C. Y. Park, and S. L. Min. A Flexible Tradeoff between Code Size and WCET using a Dual Instruction Set Processor. In SCOPES '04: Proceedings of the 8th International Workshop on Software and Compilers for Embedded Systems, pages 244--258, Amsterdam, 2004.Google ScholarGoogle ScholarCross RefCross Ref
  13. P. Lokuciejewski. A WCET-Aware Compiler. Design, Concepts and Realization. Vdm Verlag Dr. Müller, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. P. Lokuciejewski, H. Falk, M. Schwarzer, P. Marwedel, and H. Theiling. Influence of procedure cloning on wcet prediction. In CODES+ISSS '07: Proceedings of the 5th IEEE/ACM international conference on Hardware/software codesign and system synthesis, pages 137--142, New York, NY, USA, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. G. Memik, W. H. Mangione-Smith, and W. Hu. Netbench: a benchmarking suite for network processors. In ICCAD '01: Proceedings of the 2001 IEEE/ACM international conference on Computer-aided design, pages 39--42, Piscataway, NJ, USA, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. S. S. Muchnick. Advanced Compiler Design and Implementation. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. A. D. Samples and P. N. Hilfinger. Code reorganization for instruction caches. Technical Report UCB/CSD-88-447, EECS Department, University of California, Berkeley, Oct 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. D. Schulte. Modeling and transformation of flow facts within a wcet optimizing compiler (in german). Master's thesis, Technical University of Dortmund, Dortmund, Germany, May 2007.Google ScholarGoogle Scholar
  19. S. Thesing. Safe and Precise WCET Determinations by Abstract Interpretation of Pipeline Models. PhD thesis, Saarland University, 2004.Google ScholarGoogle Scholar
  20. H. Tomiyama and H. Yasuura. Code placement techniques for cache miss rate reduction. ACM Trans. Des. Autom. Electron. Syst., 2(4):410--429, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. W. Zhao, P. Kulkarni, D. Whalley, et al. Tuning the WCET of Embedded Applications. In RTAS '04: Proceedings of the 10th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'04), page 472, Washington, DC, USA, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. W. Zhao, D. Whalley, C. Healy, et al. Improving WCET by Applying a WC Code-Positioning Optimization. ACM Transactions on Architecture and Code Optimization, 2(4):335--365, Dec 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. WCET-driven, code-size critical procedure cloning

    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 Conferences
      SCOPES '08: Proceedings of the 11th international workshop on Software & compilers for embedded systems
      March 2008
      88 pages
      ISBN:9781450378437
      DOI:10.1145/1361096
      • General Chair:
      • Heiko Falk

      Copyright © 2008 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: 13 March 2008

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      Overall Acceptance Rate38of79submissions,48%

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader