contestada

Suppose you have a machine which executes a program consisting of 60% floating point multiply, 20% floating point divide, and the remaining 20% are from other instructions.
(a) [3] Management wants the machine to run 4 times faster. You can make the divide run at most 3 times faster and the multiply run at most 8 times faster. Can you meet management’s goal by making only one improvement, and which one?
(b) [2] Dogbert has now taken over the company removing all the previous managers. If you make both the multiply and divide improvements, what is the speed of the improved machine relative to the original machine?

Respuesta :

Answer:

Given that Program instructions consists of:

  • 60% floating point multiply
  • 20% floating point divide
  • 20% other instructions

Amdahl's law states that:

Execution time affected by improvement = (Execution time after improvement/ Amount of improvement) + (Execution time unaffected)

Assuming initially that floating point multiply, divide and other instructions have same clocks per instruction (CPI).

Part (a)

New execution time after improvement with multiply = (60) / 8 + (20 + 20) = 47.5

New execution time after improvement with Divide = (20) / 3 + (60 + 20) = 86.67

New system should be 4x faster which means new execution time should be below = 100/ 4 = 25.

Therefore, Management's goal can NOT be achieved by making the improvement with multiply or divide alone.

Part (b)

New execution time after improvement with multiply and divide = (60 / 8) + (20 / 3) + 20 = 34.17

Speed up = execution time of original machine / Execution time of new machine = (100 / 34.17) = 2.93

Therefore, new machine is 2.93 times faster than original machine.

RELAXING NOICE
Relax