Performance Prediction by Benchmark and Machine Analysis

Rafael H. Saavedra-Barrera and Alan Jay Smith

EECS Department
University of California, Berkeley
Technical Report No. UCB/CSD-90-607
December 1990

http://www2.eecs.berkeley.edu/Pubs/TechRpts/1990/CSD-90-607.pdf

We present a new methodology for CPU performance evaluation based on the concept of an abstract machine model and contrast it with benchmarking. The model consists of a set of abstract parameters representing the basic operations and constructs supported by a particular programming language. The model is machine-independent, and is thus a convenient medium for comparing machines with different instruction sets. A special program, called the machine characterizer, is used to measure the execution times of all abstract parameters. Frequency counts of parameter executions are obtained by instrumenting and running programs of interest. By combining the machine and program characterizations we can and do obtain accurate execution time predictions. This abstract model also permits us to formalize concepts like machine and program similarity.

A wide variety of computers, from low-end workstations to high-end supercomputers, have been analyzed, as have a large number of standard benchmark programs, including the SPEC scientific benchmarks. We present many of these results, and use them to discuss variations in machine performance and weaknesses in individual benchmarks. We also present some of our results in evaluating optimizing compilers.


BibTeX citation:

@techreport{Saavedra-Barrera:CSD-90-607,
    Author = {Saavedra-Barrera, Rafael H. and Smith, Alan Jay},
    Title = {Performance Prediction by Benchmark and Machine Analysis},
    Institution = {EECS Department, University of California, Berkeley},
    Year = {1990},
    Month = {Dec},
    URL = {http://www2.eecs.berkeley.edu/Pubs/TechRpts/1990/6370.html},
    Number = {UCB/CSD-90-607},
    Abstract = {We present a new methodology for CPU performance evaluation based on the concept of an abstract machine model and contrast it with benchmarking. The model consists of a set of abstract parameters representing the basic operations and constructs supported by a particular programming language. The model is machine-independent, and is thus a convenient medium for comparing machines with different instruction sets. A special program, called the machine characterizer, is used to measure the execution times of all abstract parameters. Frequency counts of parameter executions are obtained by instrumenting and running programs of interest. By combining the machine and program characterizations we can and do obtain accurate execution time predictions. This abstract model also permits us to formalize concepts like machine and program similarity. <p>A wide variety of computers, from low-end workstations to high-end supercomputers, have been analyzed, as have a large number of standard benchmark programs, including the SPEC scientific benchmarks. We present many of these results, and use them to discuss variations in machine performance and weaknesses in individual benchmarks. We also present some of our results in evaluating optimizing compilers.}
}

EndNote citation:

%0 Report
%A Saavedra-Barrera, Rafael H.
%A Smith, Alan Jay
%T Performance Prediction by Benchmark and Machine Analysis
%I EECS Department, University of California, Berkeley
%D 1990
%@ UCB/CSD-90-607
%U http://www2.eecs.berkeley.edu/Pubs/TechRpts/1990/6370.html
%F Saavedra-Barrera:CSD-90-607