Ask Question, Ask an Expert

+61-413 786 465

info@mywordsolution.com

Ask Computer Engineering Expert

Assignment  

1. Loop Unrolling

Consider the following loop:

loop:

l.d                           f4,0(r1)                 l1 

l.d                           f6,0(r2)                 l2 

mul.d                    f4,f4,f0                 m1 

mul.d                    f6,f6,f2                 m2 

add.d                    f4,f4,f6                 a1 

s.d                          f4,0(r1)                 s1 

daddui                  r1,r1,#-8               sub1

daddui                  r2,r2,#-8               sub2

bnez                      r1,loop                  br

Note: Our default is that FP arithmetics have 4 x-boxes.

a) Using the names 'l1' to 's1' for the first six instructions in the loop body, draw the flow-dependence graph for these instructions. Label each arrow with the dependence gap between the producer and the consumer.

In what follows, focus on three flow-dependence types: i) FP arith to FP arith, ii) FP arith to FP store, and iii) FP load to FP arith.  Denote the number of m-boxes in memory references by '#m', and the number of x-boxes in FP arithmetics by '#x'.

b) For each of the three designated flow-dependence types, indicate the number of stalls in adjacent producer-consumer pairs as functions of '#m" and '#x'.

c) Suppose #m = 1 and #x = 4.  How many stalls occur in one iteration of the loop if it is executed exactly as written?

d) Unroll the loop twice.  If one reschedules the unrolled loop optimally, how many stalls are left?  (Keep the branch as the last instruction.  Show the rescheduled code using the _short_ names).

e) Increase the 'mul-add dependence gap' to 5 cycles, leaving everything else unchanged.  Unroll the loop three times.  If one reschedules the unrolled loop optimally, how many stalls are left?  (Keep the branch as the last instruction.  Show the rescheduled code using the _short_ names).

2. Dynamic Instruction Scheduling I

Imagine that reservation stations only track whether floating-point operands are valid, and that integer operands appear by magic whenever needed.

a) Dispatch instructions 'l1' to 's1' to reservation stations rs1(l1) to rs6(s1).  Show the contents of each reservation station. Indicate both valid ("value") and pending ("ear") operands in each station. For the loads, you may make all operand entries 'blank'.  That is, mark all load dependences as resolved.  For the store, just invent a regular single-operand reservation station.  The value of 'test' is either "may issue" or "may not issue".  The value of 'free' is either "free" or "not free".

b) After both loads have completed, but no further action has occurred, show the contents of each reservation station.  As before, you may mark some reservation stations as 'free'.  Syntax: result[rs9(a9)]; val[f12].

c) At this point, dispatch the two loads of the second iteration, viz., 'l3' and 'l4', into reservation stations 'rs1' and 'rs2'.  Moreover, let instruction 'm1' of the first iteration complete.  Show the contents of each reservation station.

3. Dynamic Instruction Scheduling II

a) Instruction 'op' has been dispatched to reservation station alpha.  What statement must be proved to show that all its flow dependences are respected?

b) Instructions 'op1' and 'op2' are an antidependent pair.  The earlier 'op1' is dispatched to reservation station alpha.  The later 'op2' is dispatched to reservation station beta.  What statement must be proved to show that the antidependence is respected?

c) Instructions 'op1' and 'op2' are an output-dependent pair.  The earlier 'op1' is dispatched to reservation station alpha.  The later 'op2' is dispatched to reservation station beta.  What statement must be proved to show that the output dependence is respected?

Please reply ASAP Assignment Work.

Computer Engineering, Engineering

  • Category:- Computer Engineering
  • Reference No.:- M92547476

Have any Question?


Related Questions in Computer Engineering

Discuss the importance of metadata and some of the various

Discuss the importance of metadata and some of the various ways (Microsoft) SQL Server allows you to expose that information. References welcomed to learn where to find obscure IT information (books, articles, websites)

Can someone please help in this question - if the the price

Can someone please help in this question - If the the price of a pack of 35-count Wipes box-pack increased by 12% while revenue from those wipes increased by 5%. Calculate the own-price elasticity of demand for Wipes box ...

Question suppose that a computer can execute 1 billion

Question : Suppose that a computer can execute 1 billion instructions/sec and that a system call takes 1000 instructions, including the trap and all the context switching. How many system calls can the computer execute p ...

A swimmer is an athlete any athlete who participated in the

A swimmer is an athlete. Any athlete, who participated in the 2016 Summer Olympics and won a gold medal, was joyful. Any athlete, who is the world top athlete or a selected well-trained athlete, participated in the 2016 ...

Questionsuppose we are comparing implementations of

Question Suppose we are comparing implementations of insertion sort and merge sort on the same machine. For inputs of size n, insertion sort runs in 8n2 steps, while merge sort runs in 64nlgn steps. For which values of n ...

Discussion a network-based intrusionimagine you live by

Discussion : A Network-Based Intrusion Imagine you live by yourself on a quiet street. Each day, you leave your house in the morning and drive to work. One day while you are at work, someone breaks into your house by kic ...

A small sports club keeps information about its members and

A small sports club keeps information about its members and the fees they pay. The secretary wants to be able to record when members pay and print a report similar to that in the figure below. last n me - first_narne - p ...

Determine the mass of the water by using the waters density

Determine the mass of the water by using the water's density (specific to the initial temperature) and the volume of the water. Remember,  density = mass/volume . You can look up the density of the water at your specific ...

Tasks1 identify possible actors and use cases involved in

Tasks: 1. Identify possible actors and use cases involved in Personal Trainer's operations. 2. Create an object relationship diagram for the Personal Trainer information system. 3. Create a use case diagram for the syste ...

You are requested to design an information technology

You are requested to design an Information Technology Infrastructure for an international nonprofit organization. The organization has six offices, one each in Ohio, Kentucky, Toronto, Michigan, Chicago, and Indiana. Col ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As