The Gateway to Computer Science Excellence
+34 votes
Consider two processors $P_1$ and $P_2$ executing the same instruction set. Assume that under identical conditions, for the same input, a program running on $P_2$ takes $\text{25%}$ less time but incurs $\text{20%}$ more CPI (clock cycles per instruction) as compared to the program running on $P_1$. If the clock frequency of $P_1$ is $\text{1GHZ}$, then the clock frequency of $P_2$ (in GHz) is ______.
in CO and Architecture by
retagged by | 7.4k views

This is more of Aptitude question.

Here data are given in comparison with one another it means we should try to equate both processor values by using some equation. If we think closely there is nothing equal in both except no. of instructions to be executed. Then how can we find no. of instructions (given total time to compute, CPI, Cycle time)

$\frac{Total time}{CPI * Cycle time} = No. of Instructions$

$\frac{Total time.1}{CPI.1 * Cycle time.1} = \frac{Total time.2}{CPI.2 * Cycle time.2}$


$Performance \propto \dfrac{1}{execution\ time}$

$execution\ time=CPU\ time$

$CPU\ time= \#\ of\ seconds/program$


$CPU\ time= \#\ of\ inst/program\times \#\ of\ cycles/inst\times \#\ of\ sec/cycle$

$CPU\ time= inst\ count\times CPI\times cycle\ time$

$In\ the\ program\ different\ instruction\ takes\ different\ cycles\ to\ complete$

$\therefore\ CPU\ time=\Sigma (IC_{i}\times CPI_{i})\times cycle\ time$

$T_{1}=(IC\times x)\times\dfrac{1}{1GHz}.....(1)$

$0.75\ T_{1}=(IC\times 1.2x)\times\dfrac{1}{F_{2}}.....(2)$


$F_{2}=1.6\ GHz$

7 Answers

+81 votes
Best answer
CPU TIME (T) = No. of Instructions( I ) x No. of Cycles Per Instruction (c) x Cycle Time (t)


CPU TIME (T) = $\dfrac{\text{No. of Instructions(I) $\times$ No. of Cycles Per Instruction (c)}}{\text{Clock frequency (f)}}$

$\rightarrow T = I_{c} \times CPI \times F^{-1}$

$\rightarrow \dfrac{T \times F}{CPI} = I_{c}$

$P_1$ & $P_2$ executing same instruction set So,
No. of Instructions same for both $= I_1 = I_2 = I$

If $P_1$ takes $T_1$ time,

$\rightarrow T_2 = 0.75\times  T_1 \rightarrow\dfrac{T_{2}}{ T_{1}}=0.75$

If $P_1$ incurs $C_1$ clock cycles per instruction,

$\rightarrow C_2 =1.2 \times C_1\rightarrow \dfrac{C_{2}}{C_{1}}=1.2$

Since $I$ is same for both,

$\rightarrow \dfrac{ ( f_{1} \times T_{1} )}{c1} = \dfrac{ ( f_{2} \times T_{2} )}{c2}$  and  $f_1 =1\ GHz$

$\rightarrow F_2 =(\dfrac{C_{2}}{C_{1}}) \times (\dfrac{T_{1}}{T_{2}}) \times F_{1}$

$= \dfrac{1.2 \times 1 GHz}{0.75}=1.6\ GHz$

Hence, the clock frequency of $P_2$  is $=1.6\ GHz$.
edited by
Well this refreshed my numerical skills
Please explain about 1.2, how it comes?
As in the question, it's given P2 takes 20% more CPI (clock cycles per instruction) as compared to the program running on P1.

so if we consider P1 takes 1 clock cycle per instruction then P2 will take 1.2 clock cycle per instruction so

+33 votes

Execution time (T) = CPI * #instructions * time for a clock
= CPI * #instructions / clock frequency (F)

Given P1 and P2 execute the same set of instructions and 
T2 = 0.75 T1,
CPI2 = 1.2 CPIand 
F1 = 1GHz.


$\frac{T_1}{CPI_1} \times F_1 =\frac{T_2}{CPI_2} \times F_2$

$\frac{T_1}{CPI_1} \times 1 GHz = \frac{0.75 T_1} {1.2 CPI_1} \times F_2 $

$ \implies F_2 = \frac {1.2}{0.75} GHz$

$=1.6 GHz$

u equated the expression on the basis of "no. of instruction"  ??
SIr Can u explain How 1.2 come?
I got it..
I believe yes he is equated the expression on the basis of "no. of instruction" since P1 and P2 are executing the same instruction set.
+15 votes
This question can fit better in the aptitude section rather than the technical section.

Suppose both processors are executing 100 same instructions.

Assume that Clock cycles per instruction for P1 is 1. So, for 100 instructions, 100 Clock cycles are required. The clock frequency of P1 is 1GHz. Hence clock cycle time is 1ns. So for 100 clock cycles, 100* 1ns= 100ns time is required.

For P2,  CPI is 20% more than that of P1 that is 1.20 and time taken is 25% less that is 75ns. 100 instructions on P2 requires 100*1.2 cycles= 120 cycles.

So, 120 cycles takes 75ns on P2. hence 1cycle takes 0.625ns.

Hence clock frequency is 1/0.625 GHz = 1.6GHz.
edited by
nice appproach!
+1 vote
For P1 clock period = 1ns

Let clock period for P2 be t.

Now consider following equation based on specification
7.5 ns = 12*t ns

We get t and inverse of t will be 1.6GHz
Try to give answer for those , on which no answer selected as best. :)
0 votes
0 votes

Let's assume values.

$P_1$ takes $10ns$ with $CPI=1$, and clock cycle time = $1ns$ (derived from frequency)

This means

$P_2$ takes $7.5ns$ with $CPI=1.2$, and clock cycle time = $?=xns$

Number of instructions = $10$. (Evident from $P_1$)

For $10$ instructions $P_2$ takes $7.5ns$ (Because they work on same instructions; given)

So, $10*1.2xns=7.5ns$

=> $x=\frac{7.5}{12}$

Frequency = $=\frac{1}{x}=\frac{12}{7.5}=1.6\ GHz$


0 votes
For P1,

let no. of clocks = 100

clock time  = 1 ns (1/1GHz)

Total time = 100 * 1 ns = 100 ns

For P2,

No. of clocks = 20% more that P1 = 120

Total time = 25% less than P1 = 75 ns

    120 * x = 75 ns

⇒ x = 0.625 ns = 1/0.625 GHz = 1.6 GHz

Related questions

Quick search syntax
tags tag:apple
author user:martin
title title:apple
content content:apple
exclude -tag:apple
force match +apple
views views:100
score score:10
answers answers:2
is accepted isaccepted:true
is closed isclosed:true
52,375 questions
60,581 answers
95,398 users