IPERF - A Framework for Intelligent Performance Prediction
Project Description
Advanced optimizing compilers perform multiple optimization transformation
on program representations with decreasing levels of program abstraction,
ranging from source-to-source transformations (e.g. loop interchange),
transformations on intermediate
program representations (e.g. common subexpression elimination on quadruples
code), to transformations on a program representation close to the target
architecture object code (e.g. peephole optimizations).
For each transformation, a performance prediction model is needed to
determine whether the transformation should be applied and, in the case
of a set of transformation alternatives, which alternative should be
chosen. In addition to this accuracy requirement, a performance model
has to satisfy efficiency constraints due to compile time bounds that are
considered acceptable in different compilation environments (e.g.
static vs. dynamic optimizing compilers).
The thesis of this project is that finding a
performance model with a required accuracy/cost tradeoff
for a given prediction task and level of program abstraction
is difficult, and current approaches to the problem are ad-hoc and
unsatisfactory because they largely consist of
trial-and-error strategies without any user support to systematically
guide the search process. What is needed is a system that
produces performance models automatically for a
specified accuracy/cost tradeoff.
The goals of this project are as follows:
-
Develop a framework for performance prediction that supports
the construction and evaluation of performance prediction
models for use in compilers and programming environments.
-
Implement the framework for a set of target systems
consisting of different software and hardware layers
that may have to be modeled.
-
Evaluate the framework implementation by generating
performance models with different accuracy/cost
tradeoffs.
-
Construct a data base of performance models that may
be systematically searched in order to find the best
match with a requested accuracy/cost tradeoff.
Develop algorithms that perform efficient searchs within
the performance model data base.
The initial data base will include performance models described in
the literature.
-
Design a strategy that combines different optimization aspects
of performance models such as execution time, data space, and
power consumption.
Publications
C-H. Hsu and U. Kremer.
A Stable and Efficient Loop Tiling
Algorithm .
Technical Report LCSR-TR407, Department of Computer Science,
Rutgers University, December 1999.
C-H. Hsu and U. Kremer.
Tile Selection Algorithms and Their Performance
Models.
Technical Report LCSR-TR401, Department of Computer Science,
Rutgers University, October 1999.
C-H. Hsu and U. Kremer.
IPERF: A Framework for Automatic Construction
of Performance Prediction Models .
Workshop on Profile and Feedback-Directed Compilation (PFDC),
Paris, France, October 1998.
C-H. Hsu and U. Kremer.
A Framework for Qualitative Performance
Prediction}.
Technical Report LCSR-TR363, Department of Computer Science,
Rutgers University, July 1998.