Question: 2. (30%) You are given the following code. Note that floating-point instructions use floating point registers labeled f. Integer instructions use integer registers labeled x.


2. (30%) You are given the following code. Note that floating-point instructions use floating point registers labeled f. Integer instructions use integer registers labeled x. We are given the following latencies for the different types of instructions. Remember how to use latencies. For example, since fadd and fsub have latencies of 3 , the fmulf8,f4,f6 hich needs the results of fsubf4,f0,f10 must wait 3 cycles from when fsub starts. a). Show how many cycles are needed to complete one iteration without reordering, but with data forwarding. DO NOT use delayed branch. Create a table that includes stalls (not pipeline stages but stalls between instructions). b). Reorder instructions and show how many cycles are needed to complete one iteration. Show reordered code and cycles needed. c). Unroll the loop 2 times, reorder instructions and show how many cycles are needed to complete two iterations
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
