1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
Lyrx [107]
3 years ago
10

Computers spend most of their time in loops, so multiple loop itera- tions are great places to speculatively find more work to k

eep CPU resources busy. Nothing is ever easy, though: the compiler emitted only one copy of that loop's code, so even though multiple iterations are handling distinct data, they will appear to use the same registers. To keep multiple iterations' register usages from colliding, we rename their registers. Figure 3.49 shows example code that we would like our hardware to rename. A compiler could have simply unrolled the loop and used different registers to avoid conflicts, but if we expect our hard- ware to unroll the loop, it must also do the register renaming. How? Assume your hardware has a pool of temporary registers (call them T registers, and assume that there are 64 of them, TO through T63) that it can substitute for those registers des- ignated by the compiler. This rename hardware is indexed by the src (source) register designation, and the value in the table is the T register of the last destina- tion that targeted that register. (Think of these table values as producers, and the src registers are the consumers; it doesn't much matter where the producer puts its result as long as its consumers can find it.) Consider the code sequence in Fig ure 3.49. Every time you see a destination register in the code, substitute the next available T, beginning with T9. Then update all the src registers accordingly, so that true data dependences are maintained. Show the resulting code. (Hint: See Figure 3.50.)
Computers and Technology
1 answer:
fredd [130]3 years ago
7 0

Answer / Explanation:

From the provided Hint in Figure 3.50 and also The baseline performance ( in cycles, per loop iteration) of the code sequence in Figure 2.35 shows that  if no new instruction’s execution could be initiated until the previous instruction’s execution had completed, is 40.

Now, you might ask that how did I come up with that number?

Each instruction requires one clock cycle of execution (a clock cycle in which that instruction, and only that instruction, is occupying the execution units; since every instruction must execute, the loop will take at least that many clock cycles). To that base number, we add the extra latency cycles. Don’t forget the branch shadow cycle.

Therefore, the resulting code would be:

Loop:      LD F2,0(Rx) 1 + 4

               DIVD F8,F2,F01 + 12

               MULTD F2,F6,F2 1 + 5

               LDF4,0(Ry) 1 + 4

               ADDD F4,F0,F4 1 + 1

              ADDD F10,F8,F2 1 + 1

              ADDI Rx,Rx,#8 1

              ADDIRy,Ry,#81

              SDF4,0(Ry) 1 + 1

              SUB R20,R4,Rx 1

              BNZ R20,Loop 1 + 1

Cycle per loop iter 40

You might be interested in
How do you change between worksheets inside an Excel Workbook?
ad-work [718]

Answer:      c) Click on a different sheet tab at the bottom.

Explanation:    

To change between worksheets inside an Excel Workbook : Click on a different sheet tab at the bottom

3 0
4 years ago
Read the excerpt from a teacher's lesson plan. Global communication, especially in today's digital age, can benefit all of you i
Rufina [12.5K]

The best line to be added to the teacher’s lesson plan, which is supposed to emphasize the benefits of global communication, would be (D) learning in a global community enables you to expand your horizons and learn new languages.

The other options are not suitable because they highlight the negative side of global communications, which is not something that the teacher’s lesson intends to do.

8 0
3 years ago
Read 2 more answers
What happens when two computers use the same IP address?
olga nikolaevna [1]

Answer:

Two computers can safely have the same IP address in certain cases. In most cases, if those two computers are on the same local network, it breaks connectivity for one or both of them. Internet protocols work by sending small, individually addressed messages. Each message can be routed differently.

Explanation:

5 0
4 years ago
Read 2 more answers
The scheme where you can find the greatest common divisor of two integers by repetitive application of the division algorithm is
gavmur [86]

Answer:

False

Explanation:

The scheme where you can find the greatest common divisor (GCD) of two integers by repetitive application of the division algorithm is known as Euclidean Algorithm.

The Euclidean Algorithm for calculating GCD of two numbers X and Y can be given as follows:

  • If X=0 then GCD(X, Y)=Y since the Greatest Common Divisor of 0 and Y is Y.
  • If Y=0 then GCD(X, Y)=X since the Greates Common Divisor of 0 and X is X.
  • Let R be the remainder of dividing X by Y assuming X > Y. (R = X % Y)
  • Find GCD( Y, R ) because GCD( X, Y ) = GCD(Y, R ).
  • Repeat the above steps again till R = 0.

4 0
4 years ago
You are a part-time manager for The Mobile Vegan, a food truck catering to vegan diners in Portland, Oregon. Jessica Rosen, the
Nesterboy [21]

Answer:

i acc dont know

Explanation:

srry

5 0
3 years ago
Other questions:
  • The set of instructions that directs the computer to perform a variety of tasks is known as a
    9·1 answer
  • What makes iron man different from other superheroes ? why is iron man the best superhero ??
    5·2 answers
  • Differentiate between the broadcasting and telecommunication
    5·1 answer
  • A major problem with alcohol adverstising is that
    15·1 answer
  • 2. What is a cap? (0.5 points)
    9·1 answer
  • Program 7 - Circle You write ALL the code, then run it - Produce the correct output. Turn in code and screen print of successful
    15·1 answer
  • Identify the use of queue in the process of spooling output to a printer.
    15·1 answer
  • Now now now now mowewweedeeee
    13·1 answer
  • which feature of organisations to manage needs to know about to build and use information system successfully
    6·1 answer
  • Three types of common program errors are syntax, runtime, and logic. (5 points)
    8·2 answers
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!