We would like to speed up a Floating Point Square Root operation using one of the two methods described below. Which design would you choose?
Method 1: Uses FPSQR hardware and is responsible for 20% of the square root execution time. Speedup by this component is by a factor of 10.
Method 2: Make all the floating point instructions run 2 times faster. Floating point instructions are responsible for 50% of the square root execution time.
Program CPI original = (425/100) + (1.3375/100) = 2.0
Program CPI of design 1 = CPI original - 2%(Old CPI for FPSQR - New CPI for FPSQR) = CPI original - (2/100)*(20-2) = 2.0 - 0.02*18 = 1.64
Program CPI design 2 = (2*25/100) + (1.33*75/100) = 1.5
Design 2 is the better choice.
This problem is adapted from a University of Buffalo computer science course lecture notes.