Hardware Reference
In-Depth Information
tions per hour. The computer user is interested in reducing response time —the time between
the start and the completion of an event—also referred to as execution time . The operator of
a warehouse-scale computer may be interested in increasing throughput —the total amount of
work done in a given time.
In comparing design alternatives, we often want to relate the performance of two diferent
computers, say, X and Y. The phrase “X is faster than Y” is used here to mean that the response
time or execution time is lower on X than on Y for the given task. In particular, “X is n times
faster than Y” will mean:
Since execution time is the reciprocal of performance, the following relationship holds:
The phrase “the throughput of X is 1.3 times higher than Y” signifies here that the number
of tasks completed per unit time on computer X is 1.3 times the number completed on Y.
Unfortunately, time is not always the metric quoted in comparing the performance of com-
puters. Our position is that the only consistent and reliable measure of performance is the exe-
cution time of real programs, and that all proposed alternatives to time as the metric or to real
programs as the items measured have eventually led to misleading claims or even mistakes in
computer design.
Even execution time can be defined in different ways depending on what we count. The
most straightforward definition of time is called wall-clock time, response time , or elapsed time ,
which is the latency to complete a task, including disk accesses, memory accesses, input/
output activities, operating system overhead—everything. With multiprogramming, the pro-
cessor works on another program while waiting for I/O and may not necessarily minimize the
elapsed time of one program. Hence, we need a term to consider this activity. CPU time recog-
nizes this distinction and means the time the processor is computing, not including the time
waiting for I/O or running other programs. (Clearly, the response time seen by the user is the
elapsed time of the program, not the CPU time.)
Computer users who routinely run the same programs would be the perfect candidates to
evaluate a new computer. To evaluate a new system the users would simply compare the exe-
cution time of their workloads —the mixture of programs and operating system commands that
users run on a computer. Few are in this happy situation, however. Most must rely on other
methods to evaluate computers, and often other evaluators, hoping that these methods will
predict performance for their usage of the new computer.
Search WWH ::




Custom Search