English

Demand-driven Inlining in a Region-based Optimizer for ILP Architectures

Distributed, Parallel, and Cluster Computing 2007-05-23 v1 Programming Languages

Abstract

Region-based compilation repartitions a program into more desirable compilation units using profiling information and procedure inlining to enable region formation analysis. Heuristics play a key role in determining when it is most beneficial to inline procedures during region formation. An ILP optimizing compiler using a region-based approach restructures a program to better reflect dynamic behavior and increase interprocedural optimization and scheduling opportunities. This paper presents an interprocedural compilation technique which performs procedure inlining on-demand, rather than as a separate phase, to improve the ability of a region-based optimizer to control code growth, compilation time and memory usage while improving performance. The interprocedural region formation algorithm utilizes a demand-driven, heuristics-guided approach to inlining, restructuring an input program into interprocedural regions. Experimental results are presented to demonstrate the impact of the algorithm and several inlining heuristics upon a number of traditional and novel compilation characteristics within a region-based ILP compiler and simulator.

Keywords

Cite

@article{arxiv.cs/0604043,
  title  = {Demand-driven Inlining in a Region-based Optimizer for ILP Architectures},
  author = {Thomas P. Way and Lori L. Pollock},
  journal= {arXiv preprint arXiv:cs/0604043},
  year   = {2007}
}

Comments

23 pages