...
Question 11223 – Graphs-and-Tree
November 12, 2023
Question 9493 – GATE 2004
November 12, 2023
Question 11223 – Graphs-and-Tree
November 12, 2023
Question 9493 – GATE 2004
November 12, 2023

Question 10364 – Pipelining

Consider a non-pipelined processor operating at 2.5 GHz. It takes 5 clock cycles to complete an instruction. You are going to make a 5-stage pipeline out of this processor. Overheads associated with pipelining force you to operate the pipelined processor at 2 GHz. In a given program, assume that 30% are memory instructions, 60% are ALU instructions and the rest are branch instructions. 5% of the memory instructions cause stalls of 50 clock cycles each due to cache misses and 50% of the branch instructions cause stalls of 2 cycles each. Assume that there are no stalls associated with the execution of ALU instructions. For this program, the speedup achieved by the pipelined processor over the non-pipelined processor (round off to 2 decimal places) is _____.

Correct Answer: A

Question 1 Explanation: 
In the non-pipelined architecture the clock cycle time = 1/(2.5)G = 0.4 ns
It is given that each instruction takes 5 clock cycles to execute in the non-pipelined architecture, so time taken to execute each instruction = 5 * 0.4 = 2ns

In the pipelined architecture the clock cycle time = 1/2G = 0.5 ns

In the pipelined architecture there are stalls due to memory instructions and branch instructions.

In the pipeline, the updated clocks per instruction CPI = (1 + stall frequency due to memory operations * stalls of memory instructions + stall frequency due to branch operations * stalls due to branch instructions)

Out of the total instructions , 30% are memory instructions. Out of those 30%, only 5% cause stalls of 50 cycles each.

Stalls per instruction due to memory operations = 0.3*0.05*50 = 0.75

Out of the total instructions 10% are branch instructions. Out of those 10% of instructions 50% of them cause stalls of 2 cycles each.

Stalls per instruction due to branch operations = 0.1*0.5*2 = 0.1

The updated CPI in pipeline = 1 + 0.75 + 0.1 = 1.85

The execution time in the pipeline = 1.85 * 0.5 = 0.925 ns

The speed up = Time in non-pipelined architecture / Time in pipelined architecture
= 2 / 0.925 = 2.16

A
2.16
0 0 votes
Article Rating
Subscribe
Notify of
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x
error: Alert: Content selection is disabled!!