5.8k views
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 ______.

edited | 5.8k views
+2

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}$

CPU TIME (T) = No. of Instructions( I ) x No. of Cycles Per Instruction (c) x Cycle Time (t)

OR

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$.
by (351 points)
edited
+8
Well this refreshed my numerical skills
0
0
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

C2/C1=1.2
0
Right.

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.

So,

$\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$

by Veteran (425k points)
0
u equated the expression on the basis of "no. of instruction"  ??
0
SIr Can u explain How 1.2 come?
0
I got it..
0
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.
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.
by Loyal (7.8k points)
edited
+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
by Loyal (9.7k points)
+6
Try to give answer for those , on which no answer selected as best. :)