Computer performance is the amount of work accomplished by a computer system. The word performance in computer performance means “How well is the computer doing the work it is supposed to do?”. It basically depends on response time, throughput and execution time of a computer system.
Response time is the time from start to completion of a task. This also includes:
- Operating system overhead.
- Waiting for I/O and other processes
- Accessing disk and memory
- Time spent executing on the CPU or execution time.
Throughput is the total amount of work done in a given time.
CPU execution time is the total time a CPU spends computing on a given task. It also excludes time for I/O or running other programs. This is also referred to as simply CPU time.
Performance is determined by execution time as performance is inversely proportional to execution time.
Performance = (1 / Execution time)
(Performance of A / Performance of B) = (Execution Time of B / Execution Time of A)
If given that Processor A is faster than processor B, that means execution time of A is less than that of execution time of B. Therefore, performance of A is greater than that of performance of B.
Machine A runs a program in 100 seconds, Machine B runs the same program in 125 seconds
(Performance of A / Performance of B) = (Execution Time of B / Execution Time of A) = 125 / 100 = 1.25
That means machine A is 1.25 times faster than Machine B.
And, the time to execute a given program can be computed as:
Execution time = CPU clock cycles x clock cycle time
Since clock cycle time and clock rate are reciprocals, so,
Execution time = CPU clock cycles / clock rate
The number of CPU clock cycles can be determined by,
CPU clock cycles = (No. of instructions / Program ) x (Clock cycles / Instruction) = Instruction Count x CPI
Execution time = Instruction Count x CPI x clock cycle time = Instruction Count x CPI / clock rate
The units for CPU Execution time are:
How to Improve Performance?
To improve performance you can either:
- Decrease the CPI (clock cycles per instruction) by using new Hardware.
- Decrease the clock time or Increase clock rate by reducing propagation delays or by use pipelining.
- Decrease the number of required cycles or improve ISA or Compiler.
Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.
- Computer Organization | Basic Computer Instructions
- Differences between Computer Architecture and Computer Organization
- BUS Arbitration in Computer Organization
- MPU Communication in Computer Organization
- Purpose of an Interrupt in Computer Organization
- Peripherals Devices in Computer Organization
- Computer Organization | Von Neumann architecture
- Computer Organization | RISC and CISC
- Last Minute Notes Computer Organization
- Computer Organization | Micro-Operation
- Computer Organization | Amdahl's law and its proof
- Cache Memory in Computer Organization
- Computer Organization | Different Instruction Cycles
- Computer Organization | Booth's Algorithm
- Synchronous Data Transfer in Computer Organization
- Computer Organization | Locality and Cache friendly code
- Computer Organization | Asynchronous input output synchronization
- Computer Organization and Architecture | Pipelining | Set 3 (Types and Stalling)
- Computer Organization | Problem Solving on Instruction Format
- Computer Organization and Architecture | Pipelining | Set 2 (Dependencies and Data Hazard)
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.