In Computing Science and Statistics 30 (1998), pp. 309-314.

Predicting Algorithm Performance

Joshua Landrum
EECS Department, University of Michigan

Janis Hardwick
Statistics Department, Purdue University

Quentin F. Stout
EECS Department, University of Michigan

Abstract: We have developed a sequential approach which predicts the time that a computer algorithm will take to solve a large problem of specified size on a given system. We use regression techniques to extrapolate observations of the time needed to solve smaller problems. The past observations and current predictions are used to adaptively decide the size of problem to be observed next. While based on classic ideas, some unique aspects occur in this setting. One is that observations of small inputs can be accomplished more quickly than observations for larger inputs, which raises interesting design optimization questions when one has a fixed amount of time in which to generate the prediction. Another is the change-point phenomena as one moves from a working set in cache to one in RAM (and perhaps even one larger than the RAM available). Our measurements have also uncovered some interesting behavior of the computing systems.

Keywords: adaptive sampling, computer performance prediction, benchmarking, learning theory, experimental algorithms, design of experiments, change-point, model checking, computer science, statistics

Full paper (Postscript)
Full paper (PDF)


Links To Related Work
Adaptive Allocation:
Here is an explanation of this topic, and here are our relevant papers


Quentin's Home Copyright © 2005-2008 Quentin F. Stout