7.4k views

In an enhancement of a design of a CPU, the speed of a floating point unit has been increased by $\text{20%}$ and the speed of a fixed point unit has been increased by $\text{10%}$. What is the overall speedup achieved if the ratio of the number of floating point operations to the number of fixed point operations is $2:3$ and the floating point operation used to take twice the time taken by the fixed point operation in the original design?

1. $1.155$
2. $1.185$
3. $1.255$
4. $1.285$

edited | 7.4k views

SpeedUp $=\dfrac{\text{Original time taken}}{\text{new time taken}}$

Let $x$ be the time for a fixed point operation,

Original time taken $=\dfrac{(3x + 2\times 2x)}{5} =\dfrac{7x}{5}$
New time taken $=\dfrac{\left(\dfrac{3x}{1.1} + \dfrac{4x}{1.2}\right)}{5}=\dfrac{8x}{1.32\times 5}$
So, SpeedUp $=\dfrac{7\times 1.32}{8} =1.155$

Correct Answer: $A$
by Boss
edited
0
can someone please explain the logic of calculation of new time taken? how to get (1/1.1)x time, for 10% increase in speed?
I assumed a speed of 100km/hr, and increased the speed by 10% to 110km/hr, then with constant distance, calculated the new time. it works.
But is there any more direct way?
+28
when we count new time, speed is increased so time is decrease. but how much?

take in mind simple speed formula: $speed=\frac{number of operations}{time for that}$

so if we want to find the time taken to perform operations, $time=\frac{number of operations}{speed}$

now as there is increase-decrease in speed in percent, 1.1 or 1.2 comes in denominator.

hope you understood.
0
Is this part still in GATE 2017 syllabus??
0
why are we dividing with '5' while calculating time??
0
plz tell this why divide by 5 formula is s=d\t i.e t=d\s plz explain i am not geting???
+3
5 is divided because,
no: of floating point operations to fixed point operations is 2:3

So, no : of floating point operations = 2/5 * total operations and fixed point operations = 3/5 * total operations
Let total operations = 1.
0
the number of floating point operations  is 2....then why 4x was divided by 1.2
0
An aptitude question disguised as an architecture question..

You can tabulate down the given data from question.

 Speed in Original Design Speed in New Design # of Operations given(2:3) Floating Point (FP) operations 100 120 2x Fixed Point (XP) operations 200 220 3x

Here, Speed = #operations per unit time (Just like speed = distance/time)

Took 100,200 for FP and XP for easy understanding.

Say 5x is total number of operations, in which 2x FP and 3x XP operations

Speed up = $\frac{Time in Original Design}{Time in New Design}$

=>$\frac{2x/100 + 3x/200}{2x/120 + 3x/220}$ (Since we know time = #operations/speed)

we get Speed up = 1.155, So Option (A)

Hope this solution was easy to understand

• $k$ = no of times one floating point operation takes more time than one fixed point operation.
• $x:y$ = ratio of no of fixed point operations to that of floating point operations.
• $a$ = % increase in speed of floating point unit in fraction {i.e. 20% means $a$ = $0.2$}
• $b$ = % increase in speed of fixed point unit

Then Net speedup

\begin{align*} S &= \frac{\text{total time in old design}}{\text{total time in new design}} \\ & = \frac{ky+x}{\frac{ky}{1+a}+\frac{x}{1+b}} \end{align*}

Putting all these values S = $1.155$.

NOTE: That is not a standard formula. It has been derived , by taking total time  = $T$ and total operations = $N$

by Veteran
0

https://gateoverflow.in/101176/floating-point

which is also explained by debashih sir :)

Suppose we have 20 floating instructn and 30 fixed.

Initially Speed of Floating instruction is 20 and fixed is 10,

so total time=20*20+30*10=700

After increasing float speed 20%=speed(float)=24

10% increase in fixs speed=speed(fix)=11

So total time= 24*20+30*11=480+330=810

Speed up=810/700=1.1571
0
why is it not 700/810???
0
Because speed up of new =Old time taken/new time taken
+3
This solution is wrong.

It says "initially Speed of Floating instruction is 20 and fixed is 10,"

Speed of floating point is double than fixed here but this is not given,they have given that time of floating point is double.Although this is giving correct answer but approach is [email protected] you were right.It should be 710/800 and it gives wrong answer
0

Speed has  increased by 20% (since speed has increased ) hence it will take lesser time and it should be 16 for floating point operations after the enhancement.

and based on above argument it should be 70/59=1.186

pls correct me if my approach is wrong. Thanks in advance.

in old cpu

let us assume fixed operation takes=1 unit time

then float operation takes = 2 unit time

as the operation are given 2:3

lets consider 2 float and 3 fixed operation

total execution time= 2*2 +3*1=7

in new machine

float takes 20% less time  = 2*80/100 =1.6

fixed take 10% less time   = 1*90/100= .9

total execution time = 1.6*2 + .9*3 = 5.9

speedup= performance of new machine/ performance of old machine

performance is inversely proportional to execution time

so speedup= execution time of old / execution time of new

= 7/5.9

=1.185
by Active
Original time

Floating Point : 2y

Fixed point :  y

Floating point and fixed point instruction are in 2:3 ratio.

For simplicity assume there are 2 floating point and 3 fixed point instruction

Not original time 4y + 3y =7y             -------------------1

Now speed of floating point increases by 20%. we need to convert this 'SPEED' into 'TIME' because we need to calculate ratio of original time and new time.

speed increased by 20% means , it becomes 120/100 of original.

And not time becomes Inverse of this i.e. 100/120 (Newtons formulae applicable to even Computer science.)

Now time for one floating point instruction becomes = 100*2y / 120 -A

simillarly time for one fixed point becomes 100*y/110 -B

we have 2 Floating and 3 fixed point instruction . hence total time 2A+3B  = 800*y/132  ---------------2

Divide 1 by 2 gives answer A
by Loyal
–1 vote

Say in old system:               20 floating point operation and 30 fixed point operations

say floating point takes 2 units and fixed point takes 1 unit

Total time in old system=  20*2 +30 *1= 70 units

In Enhanced system         floating point takes = 2* 0.8= 1.6 units

fixed point takes= 1*0.9= 0.9 units

Total time = 20*1.6 +30 *0.9 = 59 units

Speedup= 70/59= 1.1864

by Loyal
edited
+12
When speed is increased by 20%, time won't decrease by 20% and become 80%. It'll decrease by 100/1.2 = 83%.
+1
old processor

1 sec -- x instruction

new processor

1 sec -- 1.2*x instruction

?      --    x  instruction

for new processor ?=x/1.2   i.e. for processing same number of insctructions it now takes x/1.2 time
0
Sir I got the difference. Thanx.

But how to get that formula? I know its silly but nothing is coming in my mind. :P
Explanation:
(1.27)
Let total operation be 100 and total time taken is t = 100 sec.
Floating point operations are =610×100=60
Fixed point operations are =410×100=40
Let time taken by floating point is t1 and time taken by fixed point is t2. So t1+t2=100 … (1)
Time taken by 60 floating point operation = t1
1 floating operation = 160
Similarly 1 fixed point operation takes 240
∵ 160=2240
2t1 = 6t2
From equation 1 and 2
1=6008  2=2008
After speed-up 1′=11.3=6001.3×8=6000104
2′=21.2=1001.2×8=200096
1′=1′+2′=6000104+200096
2=′×1
2=100[6000104+200096]×1=10057.69+20.83×1
2=10078.52×1=1.27 1
by Boss