• DocumentCode
    3023944
  • Title

    WCET-aware Register Allocation Based on Integer-Linear Programming

  • Author

    Falk, Heiko ; Schmitz, Norman ; Schmoll, Florian

  • Author_Institution
    Comput. Sci. l2, Tech. Univ. Dortmund, Dortmund, Germany
  • fYear
    2011
  • fDate
    5-8 July 2011
  • Firstpage
    13
  • Lastpage
    22
  • Abstract
    Current compilers lack precise timing models guiding their built-in optimizations. Hence, compilers apply ad-hoc heuristics during optimization to improve code quality. One of the most important optimizations is register allocation. Many compilers heuristically decide when and where to spill a register to memory, without having a clear understanding of the impact of such spill code on a program´s runtime. This paper presents an integer-linear programming (ILP) based register allocator that uses precise worst-case execution time (WCET) models. Using this WCET timing data, the compiler avoids spill code generation along the critical path defining a program´s WCET. To the best of our knowledge, this paper is the first one to present a WCET-aware ILP-based register allocator. Our results underline the effectiveness of the proposed techniques. For a total of 55 realistic benchmarks, we reduced WCETs by 20.2% on average and ACETs by 14%, compared to a standard graph coloring allocator. Furthermore, our ILP-based register allocator outperforms a WCET-aware graph coloring allocator by more than a factor of two for the considered benchmarks, while requiring less runtime.
  • Keywords
    computational complexity; graph colouring; integer programming; linear programming; optimising compilers; WCET-aware ILP-based register allocator; graph coloring allocator; integer-linear programming; program compilers; spill code generation; worst-case execution time models; Mathematical model; Optimization; Pipelines; Program processors; Registers; Resource management; Timing; Integer-Linear Programming; Pipeline; Register Allocation; WCET;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Real-Time Systems (ECRTS), 2011 23rd Euromicro Conference on
  • Conference_Location
    Porto
  • ISSN
    1068-3070
  • Print_ISBN
    978-1-4577-0643-1
  • Type

    conf

  • DOI
    10.1109/ECRTS.2011.10
  • Filename
    6001766