Thursday, 7 January 2016

Quantifying performance

We all know the performance of computing devices have improved, especially in past decade. Now the question comes- what is performance and how do we compare it?
Generally, performance describes how quickly a given system can execute programs. Computing devices which can do so in less to time can be said to have higher performance.
But which set of programs to choose and how do we quantify performance, which can help in fair comparison of computing devices? These questions will be answered in this post.

Benchmark suites

A benchmark suite consists of a set of programs that represent the characteristics of programs that run into a particular system. After running benchmark suites, devices are given scores based on the time taken to execute them. There are different benchmark suites that estimate system's performance on different types of applications.

One of the best-known benchmark suites is the SPEC suite, produced by Standard Performance Evaluation Corporation.

Metrics in computer architecture

1) MIPS

MIPS(million instructions per second) is calculated by dividing the number of instructions executed in running a program.



where R is the rate of execution of instructions
n= Total number of instructions executed
t= Time taken for execution

If a processor executes at the rate of 1 MIPS, then on an average in one second, it can execute one million instructions.





Rate of execution of Pentium is 126.5 MIPS at 75MHz




Rate of execution of Intel 4004 is 0.07 MIPS at 740kHz





2) CPI/IPC

CPI stands for Cycle per instructions. Mathematically, it is calculated by dividing the number of clock cycles required to execute the program by the number of instructions executed in running the program.
For systems that can execute more than one instruction per cycle, the number of instructions executed per cycle, or IPC, is often used instead of CPI. IPC is calculated by taking the reciprocal of CPI.




CPI= Cycles per instructions
IPC= instructions executed per cycle

Note:

In general, IPC and CPI are a less useful measure of system performance as compared to MIPS, because they do not contain any information about system clock rate or how many instructions the system requires to perform a task. 


No comments:

Post a Comment