• DocumentCode
    2578559
  • Title

    Multi-objective Exploration of Compiler Optimizations for Real-Time Systems

  • Author

    Lokuciejewski, Paul ; Plazar, Sascha ; Falk, Heiko ; Marwedel, Peter ; Thiele, Lothar

  • Author_Institution
    Comput. Sci. 12, Tech. Univ. Dortmund, Dortmund, Germany
  • fYear
    2010
  • fDate
    5-6 May 2010
  • Firstpage
    115
  • Lastpage
    122
  • Abstract
    With the growing complexity of embedded systems software, high code quality can only be achieved using a compiler. Sophisticated compilers provide a vast spectrum of various optimizations to improve code aggressively w. r. t. different objective functions, e. g., average-case execution time (ACET) or code size. Due to the complex interactions between the optimizations, the choice for a promising sequence of code transformations is not trivial. Compiler developers address this problem by proposing standard optimization levels, e. g., O3 or Os. However, previous studies have shown that these standard levels often miss optimization potential or might even result in performance degradation. In this paper, we propose the first adaptive WCET-aware compiler framework for an automatic search of compiler optimization sequences which yield highly optimized code. Besides the objective functions ACET and code size, we consider the worst-case execution time (WCET) which is a crucial parameter for real-time systems. To find suitable trade-offs between these objectives, stochastic evolutionary multi-objective algorithms identifying Pareto optimal solutions are exploited. A comparison based on statistical performance assessments is performed which helps to determine the most suitable multi-objective optimizer. The effectiveness of our approach is demonstrated on real-life benchmarks showing that standard optimization levels can be significantly outperformed.
  • Keywords
    Pareto optimisation; embedded systems; evolutionary computation; optimising compilers; stochastic programming; Pareto optimal solutions; adaptive worst-case execution time-aware compiler framework; average-case execution time; code transformations; compiler optimization sequences; embedded systems software; multiobjective optimizer; performance degradation; real-time systems; statistical performance assessments; stochastic evolutionary multiobjective algorithms; Aerospace electronics; Computer science; Distributed computing; Embedded software; Embedded system; Optimizing compilers; Real time systems; Software systems; Standards development; Timing; Compiler; Multi-Objective Optimization; Pareto; Real-Time; WCET;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Object/Component/Service-Oriented Real-Time Distributed Computing (ISORC), 2010 13th IEEE International Symposium on
  • Conference_Location
    Carmona, Seville
  • ISSN
    1555-0885
  • Print_ISBN
    978-1-4244-7083-9
  • Electronic_ISBN
    1555-0885
  • Type

    conf

  • DOI
    10.1109/ISORC.2010.15
  • Filename
    5479565