I am trying to answer a school assignment but i am getting confused to what the question is trying to ask.
A design optimization was applied to a computer system in order to increase the performance of a given execution mode by a factor of 10. The optimized mode is used 50% of the time, measured as a percentage of the execution time after the optimization has been applied.
(a)
What is the global speedup value that is achieved with this optimization?
Remind:
Amdahl’s law defines the global speedup as a function of the optimized fraction before the optimization is applied. As a consequence, the 50% ratio cannot be directly used to evaluate this speedup value.(b)
What is the percentage of the original execution time that is affected by this optimization?(c)
How much should such execution mode be optimized in order to achieve a global speedup of 5?
Can a global speedup of 12 be achieved?
And 11?
When trying to calculate answer A) i came to the answer 1.81 ( 20/11 )
T' = 0.5 * T + 0.5 * T / 10 = T / 2 + ( 1 / 20 ) T = ( 11 / 20 ) * T
Speedup = T / T' = T / ( ( 11 / 20 ) * T = 20 / 11 = 1.81
For me this answer makes sense but in the professor's solutions say otherwise:
(a) 5.5
(b) 91%
(c)
Yes it can with an optimization by a factor of 25 / 3.
No, because the factor can’t be negative, so it is impossible.
Also no, because ∞ optimization → impossible
I can't solve the other ones because I am confused with the first one.
Why is 5.5 the correct answer?
Let's suppose a computer has two states A and B, and after whatever optimization, it spends
0 ≤ p ≤ 1of its time in state A, andq = 1 - pof its time in state B. (Sopis something like .5, or .27).State A was sped up by a factor of X. State B was sped up by a factor of Y.
So before, it was spending time
p * X + q * Ytime that it can now do inp + q = 1unit of time. So its speed up isp * X + q * Y.Applying this to the problem you were given:
p = q = .5,X=10,Y=1(no speedup).10 * (.5) + 1 * (.5) = 5.5This easily generalizes.