Worst-case execution time aware compilation techniques for real-time systems

Author(s)

Bibliographic Information

Worst-case execution time aware compilation techniques for real-time systems

Paul Lokuciejewski, Peter Marwedel

(Embedded systems / Nikil Dutt, Grant Martin, Peter Marwedel, series editors)

Springer, c2011

Available at  / 1 libraries

Search this Book/Journal

Note

Includes bibliographical references and index

Description and Table of Contents

Description

For real-time systems, the worst-case execution time (WCET) is the key objective to be considered. Traditionally, code for real-time systems is generated without taking this objective into account and the WCET is computed only after code generation. Worst-Case Execution Time Aware Compilation Techniques for Real-Time Systems presents the first comprehensive approach integrating WCET considerations into the code generation process. Based on the proposed reconciliation between a compiler and a timing analyzer, a wide range of novel optimization techniques is provided. Among others, the techniques cover source code and assembly level optimizations, exploit machine learning techniques and address the design of modern systems that have to meet multiple objectives. Using these optimizations, the WCET of real-time applications can be reduced by about 30% to 45% on the average. This opens opportunities for decreasing clock speeds, costs and energy consumption of embedded processors. The proposed techniques can be used for all types real-time systems, including automotive and avionics IT systems.

Table of Contents

1. Introduction. 1.1. Design of Embedded Real-Time Systems. 1.2. Contribution of this Work. 1.3. Outline. 2. WCET Analysis Techniques. 2.1. Introduction. 2.2. Approaches for WCET Analysis. 2.3. Basic Concepts for Static WCET Analysis. 2.4. Static WCET Analyzer aiT. 3. WCC - WCET-Aware C Compiler. 3.1. Introduction. 3.2. Related Work. 3.3. Structure of the WCC Compiler. 3.4. Integration of WCET Analyzer. 3.5. Modeling of Flow Facts. 3.6. Static Loop Analysis. 3.7. Back-Annotation. 3.8. TriCore Processor. 4. WCET-Aware Source Code Level Optimizations. 4.1. Introduction. 4.2. Existing Code Optimization Techniques. 4.3. Procedure Cloning. 4.4. Superblock Optimizations. 4.5. Loop Unrolling. 4.6. Accelerating Optimization by the Invariant Path. 4.7. Summary. 5. WCET-Aware Assembly Level Optimizations. 5.1. Introduction. 5.2. Existing Code Optimization Techniques. 5.3. Procedure Positioning. 5.4. Trace Scheduling. 5.5. Summary. 6. Machine Learning Techniques in Compiler Design. 6.1. Introduction. 6.2. Related Work. 6.3. Machine Learning Based Heuristic Generation. 6.4. Function Inlining. 6.5. Loop-Invariant Code Motion. 6.6. Summary. 7. Multi-Objective Optimizations. 7.1. Introduction. 7.2. Motivation. 7.3. Related Work. 7.4. Compiler Optimization Sequence Exploration. 7.5. Multi-Objective Exploration of Compiler Optimizations. 7.6. Experimental Results for Optimization Exploration. 7.7. Summary. 8. Summary and Future Work. 8.1. Research Contributions. 8.2. Future Work. A. Abstract Interpretation. B. Transformation of Conditions. References. List of Figures. List of Tables. Index.

by "Nielsen BookData"

Related Books: 1-1 of 1

  • Embedded systems

    Nikil Dutt, Grant Martin, Peter Marwedel, series editors

    Springer

Details

  • NCID
    BB0418291X
  • ISBN
    • 9789048199280
  • LCCN
    2010936440
  • Country Code
    ne
  • Title Language Code
    eng
  • Text Language Code
    eng
  • Place of Publication
    Dordrecht
  • Pages/Volumes
    xvii, 260 p.
  • Size
    25 cm
  • Classification
  • Parent Bibliography ID
Page Top