A system is designed as a cascade of of 4 subsystems, each contributing the same amount of time to the average service time of the system. If we wish to increase the speed of the system by a factor of 2 by reducing the service time of each subsystem equally, how much speedup should be applied to each subsystem?

This is how I solved the problem and I was hoping someone could let me know if I am on the right track:

Amdahl's Law is Speed Up[overall] = 1 / (Fe/Se + (1 - Fe)) where Fe is enhanced fraction and Se is enhanced speedup. In this case Speed Up overall = 2 and enhanced speed up = 4 because there are 4 subsystems. All I did was solve for Fe and I got .66, which is 66.66%. This means each subsystem must increase it's speed by 66.66%.

Is this correct? Am I on the right track at all?

The next question asks a similar question except the average times of the first two subsystems are to be reduced by twice as much as those of the last two subsystems, but the overall speed up should remain at 2. I'm a little confused how to use Amdahl's Law here.

Would appreciate all / any advice or any literature that might help.

• This isn't Amdahl's Law because you're not doing work in parallel. Oct 19 '12 at 11:06
• @TobyLawrence: Actually, Amdahl's Law isn't about parallelism. It's really just pointing out that the parts of a system you don't/can't speed up quickly dominate the overall performance of the system, making further speedups of the other parts even less cost-effective. Parallelism just happens to be one way of speeding things up, and the law was developed in the context of using parallel processing to speed up computers. Oct 19 '12 at 16:39
• @DaveTweed I'd argue another time that Amdahl's Law is directly related to and based on the potential speed-up surrounding parallel workloads. :P Oct 19 '12 at 18:34

No, you're way off base, and Amdahl's Law does not apply in this case.

It's a simple rate problem, like you had in your first algebra class. You have four subsystems, each of which contributes the same amount of time to the overall operation:

T1 = T2 = T3 = T4

Ttotal = T1 + T2 + T3 + T4

Ttotal = 4 × T1

If you want to divide the total time in half while keeping the subsystem times equal to each other, just divide both side of the last equation by 2:

Ttotal/2 = 4 × T1/2

In other words, you have to speed up each subsystem by a factor of 2; i.e., each one must run in half of its original time.

The second problem is a little trickier. Let's call x the amount of time by which the second two subsystems are sped up, which means that the first two subsystems are sped up by 2x. Now we can write:

Ttotal/2 = (T1-2x) + (T2-2x) + (T3-x) + (T4-x)

Solve for x:

6x = T1 + T2 + T3 + T4 - Ttotal/2

Making the other substitutions we know about:

6x = 4 × T1 - (4 × T1)/2

6x = 2 × T1

x = T1/3

Therefore, the first two subsystems must run in 1/3 their original time (T1 - 2x), and the second two must run in 2/3 of their original time (T3 - x).

• Dave you are the man. Oct 19 '12 at 17:49