Question: 1 . ) ( 2 5 points ) a - ) What is the baseline performance ( in cycles, per loop iteration ) of the

1.)(25 points)
a-) What is the baseline performance (in cycles, per loop iteration) of the code sequence in Figure-1
if no new instruction's execution could be initiated until the previous instruction's execution had
completed? Ignore front-end fetch and decode. Assume that execution does not stall for lack
of the next instruction, but only one instruction/cycle can be issued. Assume the branch is taken,
and that there is a one-cycle branch delay slot. (In the following code, you may assume Rx is as
x1 register, Ry register is as x2 register)
Figure-1 : Code and latencies for question-1
b-) Considering true data dependencies and functional unit latencies, reorder(schedule) the
instructions to improve performance of the code in Figure-1. Calculate the required cycles per
iteration of the loop.
c-) Using different registers to prevent name dependencies, hand-unroll two iterations of the loop in
your reordered code obtained from (b). Calculate the required cycles per iteration of the loop.
d-) Now, reorder(schedule) the unrolled code obtained from (c). Calculate the required cycles per
iteration of the loop.
1 . ) ( 2 5 points ) a - ) What is the baseline

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!