You are on page 1of 6

Text Book: Computer Organization by Carl Hamacher, Zvonko Varnesic, Safwat Zaky.

Performance of a Processor: How quickly a computer can execute programs. The speed with which a computer executes programs is affected by the design of its hardware and its machine language instructions. Compiler design is also important because most of the user application will be in high level language.

Main Memory

Cache Memory

Processor

Bus Processor Cache At the start of execution, all programs instructions and the required data are stored in main memory. As execution proceeds, the instructions are fetched one by one over the bus into the processor and a copy is placed in the cache. When the execution of an instruction calls for data located in main memory, the data are fetched and a copy is placed in the cache. Later if the same instruction or data item is needed a second time, it is read directly from the cache. Cache Access Time<Main Memory Access time.

Processor Clock: Processor circuits are controlled by a timing signals called as clock. The clock defines regular time intervals, called clock cycles. To execute a machine instruction, the processor divide the action to be performed into a sequence of basic steps, such that each step can be completed in one clock cycle.

Let clock cycle length be p Clock Rate R=1/p cycles/sec Cycles/Sec is called as Hertz. Million is denoted by a prefix Mega and billion is denoted by Giga. Eg: Processor is going to generate 500 million cycles per second is termed as 500 MHz. Basic Performance Equation: Let T be the processor time required to execute a program that has been prepared in high level language. Compiler converts high level language to machine language instructions. Assume complete execution of program requires the execution of N machine language instructions. N-Actual No of Instructions to be executed.

Let the average no of basic steps needed to execute one machine instruction is S, where each basic step is completed in one clock cycle. Let Clock Rate be R Cycles/Sec. Program Execution time is given by T=(N x S)/R Equation To reduce T, N or S should be reduced or Clock Rate R can be increased. To reduce N source program should be compiled to fewer instructions. High Frequency clock increases the value of R. --- Basic Performance

Pipelining and Superscalar Operation: The processing of an instruction need not be divided into only two steps. To gain further speed up, the pipeline must have more stages. Let us consider the following decomposition of the instruction execution: a) Fetch Instruction (FI): Read the next expected instruction into a buffer. b) Decode Instruction (DI): Determine the opcode and the operand specifiers. c) Calculate Operand (CO): calculate the effective address of each source operand. d) Fetch Operands (FO): Fetch each operand from memory. e) Execute Instruction (EI): Perform the indicated operation. f) Write Operand (WO): Store the result in memory.

No of basic steps to execute an instruction in pipelined approach S1.

Superscalar Architecture

More than one instruction will be executed in single clock cycle.


No of basic steps to execute an instruction in superscalar architecture approach

S 1. Clock Rate:
The basic performance equation of processor is given by T= (N x S)/R.

If we increase the clock rate R, the time required to execute a high level language program by a processor is reduced. To increase the clock rate, length of the clock pulse should be reduced using IC technology. Instruction Set: RISC vs CISC Reduced Instruction Set Computer (RISC): It has Simple Instructions. So more no of instructions needed to do a process but involve fewer steps in executing an instruction. N increases, S decreases. Complex Instruction Set Computer (CISC): It has complex Instruction. So less no of instructions are needed to do a process but involves more steps in executing an instruction. N decreases, S increases. Complex Instruction combined with pipelining would achieve better performance than RISC with pipelined approach. Compiler: User need to choose a right compiler for an application. Compiler determines the value of N. If N is reduced then the time required to execute a high level language program by a processor is reduced too.
Program Execution time is given by T=(N x S)/R

--- Basic Performance

Equation

Performance Measurement: Computer community adapted the idea of measuring computer performance using bench mark programs. To make comparison possible, standardized programs must be used. A nonprofit organization System Performance Evaluation Corporation (SPEC) has developed this standard.
The programs selected are Game Playing, Compiler, and Database application

to numerically intensive program in astrophysics and quantum chemistry. SPEC rating=(Running time on reference computer)/(Running time on computer under test) If SPEC rating is 50 then computer under test is 50 times faster than that of reference computer. Some standards are: SPEC 95- Reference Computer SUNSPARC Station. SPEC 2000- Reference Computer ULTRASPARC 10.

Overall SPEC rating is given by, SPEC rating= ( (i=1 to n ) SPECi)1/n Where n- no of programs in the suite.