Skip to content
TheCScience
TheCScience
  • Engineering Subjects
    • Human Values
    • Computer System Architecture
    • Digital Communication
    • Internet of Things
  • NCERT Solutions
    • Class 12
    • Class 11
  • HackerRank solutions
    • HackerRank Algorithms Problems Solutions
    • HackerRank C solutions
    • HackerRank C++ problems solutions
    • HackerRank Java problems solutions
    • HackerRank Python problems solutions
TheCScience
TheCScience

Performance Metrics in Computer Architecture

YASH PAL, July 24, 2025February 4, 2026

Performance metrics in computer architecture – The computer performance has improved over time. Generally, performance is a very wide term and describes how quickly a given system can execute a program or programs.

Systems that execute programs in less time are said to have higher performance. In finding the hardware requirements for the processor, performance is one of the key factors to consider, along with cost, size, security, reliability, and power consumption.

It is very difficult to compare different processors in terms of execution speed. The execution speed of an application depends not just on the speed of the processor but on the instruction set, choice of implementation language, efficiency of the compiler, and skill of programming.

Measurement of execution time is also impractical since it is not possible to test each and every program on the computer. Therefore, computer architects have come up with a variety of metrics to describe computer performance, some of which are:

Performance metrics of computer architecture

  1. Millions of instructions per second (MIPS)
  2. Cycles per instruction (CPI)
  3. Instructions executed per cycle (IPC)
  4. Speed up

Millions of Instructions Per Second (MIPS)

This is a common measure of performance for a processor, which is defined as the rate at which instructions are executed. This is expressed in millions of instructions per second. This is calculated by dividing the number of instructions executed in running a program by the time required to run the program.

Mathematically,

MIPS = IC / T x 106

where Ic is the total instruction count, and T is the total execution time in seconds.

The MIPS performance parameter is generally not preferred nowadays because it does not account for the fact that different systems often require different numbers of instructions to implement a given program.

Cycles Per Instruction (CPI)

A processor is driven by a clock with a constant frequency. Therefore, computer performance can be defined as the number of clock cycles required to execute an instruction. This is known as cycles per instruction (CPI).

The cycles per instruction of a given program on a given system is calculated by dividing the number of clock cycles required to execute the program by the number of instructions executed in running the program.

If all the instructions required the same number of clock cycles, then CPI would be a constant value for that processor. However, on any given processor, the number of clock cycles required varies for different types of instructions, such as load, store, branch, and so on. Mathematically, for a given program, CPI is defined as

CPI = Total number of cycles / Total number of instructions

Instruction Executed Per Cycle (IPC)

The instruction executed per cycle (IPC) is another form of CPL. IPC is calculated by dividing the number of instructions executed in running a program by the number of clock cycles required to execute the program.

Mathematically, for a given program

IPC = Total number of Instructions / Total number of cycles

The instruction executed per cycle (IPC) is the reciprocal of cycles per instruction (CPI). Both methods give the same information, and the choice of which to use is generally made based on which of the values is greater than 1.

Most of the computer architecture research is done in the field of simulation. These simulations are generally unable to calculate the cycle time of the systems that they simulate. So CPI and/or IPC are often the best available estimate of performance.

Note: The high values of IPC indicate that the given program took fewer cycles to be executed, while high values of CPI indicate that more cycles are required for execution. Thus, a high IPC indicates good performance, while a high CPI indicates poor performance.

Speed-up

Speed up is defined as the ratio of execution times before and after a change is made. Therefore, the term speed up for computer architecture describes how the performance of the architecture changes as different improvements are made to the architecture.

Mathematically,

Speedup = Execution time before / Execution time after

Speedup = Performance after / Performance before

Let a feature of the system be used, during execution for a fraction of the time t, before improvement, and that the speed up of that feature after improvement is SUf. Then the overall speedup of the system is given as

Speedup = 1 / (1-f)+ (f/ SUf)

Related questions and answers

What is the significance of the performance of a system?

In finding the hardware requirements, the performance is one of the key factors to consider along with cost, size, security, reliabilit and power consumption.

Define MIPS.

MIPS is defined as the rate at which instructions are executed. This is expressed in millions of instructions per second.

How can you define computer performance?

The computer performance can be defined as the number of clock cycles required to execute an instruction. This is known as cycles per instruction (CPI).

Computer System Architecture engineering subjects Computer System Architecture

Post navigation

Previous post
Next post

Computer Architecture fundamentals
Development of Computers
Von Neuman and Harvard machine Architecture
Flynn Classification
Computer Structure Architecture
Interfacing Logic Devices
Levels of Design abstraction
Performance Metrics

Register Transfer Language
Memory Transfer
Arithmetic Micro-operations
Logic Micro-operations
Shift Micro-operations
Bus Architecture
Data Transfer
Central Processing Unit
CPU Bus Architecture

Computer Register and Types
Common Bus System
Instruction Format
Instruction Types
Instruction Cycle
Addressing Modes
Design of a basic computer

Basic function of a Computer
General register organization
Stack organization
Infix to Reverse Polish Notation Conversion
Instruction Types and their classifications
Data transfer and manipulation
Program control
RISC characteristics
CISC characteristics

Pipeline
Types of Pipeline
Arithmetic Pipeline
Instruction Pipeline
Hazards
Vector Processing

Data Representation
Addition and Subtraction
Adder Circuits
Shift and Add Multiplication Method
Booth's Algorithm
Restoring Division Algorithm
Non-Restoring Division Algorithm
Array Multiplier

Memory Classification
Memory Characteristics
Memory Organization
Memory Types
Associative Memory
Cache Memory
Virtual Memory

Input Output Interface
Modes of Data Transfer
Priority Interrupt
Direct Memory Access
Input-Output Processor
Serial Communication

TheCScience

We at TheCScience.com are working towards the goal to give free education to every person by publishing in dept article about Secondary, Senior-Secondary, and Graduation level subjects.

Pages

About US

Contact US

Privacy Policy

DMCA

Engineering Subjects

Internet of Things

Human Values

Digital Communication

Computer System Architecture

Programming Tutorials

Data Structure and Algorithm

C

Java

NCERT

Class 12th

©2026 TheCScience | WordPress Theme by SuperbThemes