Using Profile Information to Assist Classic Compiler Code Optimizations (PostScript version, PDF version)
Pohua P. Chang, Scott A. Mahlke, and Wen-mei W. Hwu
Software Practice and Experience, Dec. 1991, Vol. 21, No. 12, pp. 1301-1321
This paper describes the design and implementation of
an optimizing compiler that automatically generates profile
information to assist classic code optimizations. This
compiler contains two new components, an execution profiler
and a profile-based code optimizer, which are not commonly
found in traditional optimizing compilers. The execution
profiler inserts probes into the input program, executes the
input program for several inputs, accumulates profile
information, and supplies this information to the optimizer.
The profile-based code optimizer uses the profile information
to expose new optimization opportunities that are not visible
to traditional global optimization methods. Experimental results
show that the profile-based code optimizer significantly improves
the performance of production C programs that have already been
optimized by a high-quality global code optimizer.
[ IMPACT Main Page |
Team Members |
Publications |
Software |
FAQ ]