Instruction Scheduling Flashcards

1
Q

What is instruction scheduling?

A

how the processor does register renaming and out-of-order execution

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are the differences between Tomasulo’s Algorithm and modern processors?

A
  • Only handles floating point instructions (now: all instructions)
  • Looks ahead at a fewer number of instructions (now: 100s)
  • Hardware didn’t directly support exception handling
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the steps in Tomasulo’s Algorithm?

A
  1. instruction queue - fetch unit pushes instructions into the instruction queue
  2. Issue - instruction is dequeued and sent to a reservation station, where it waits to be executed
  3. Dispatch - Instruction dequeued from reservation station and sent to an ALU to be executed
  4. Write result / broadcast - Instruction has been executed and we broadcast the results back to the instruction queue, registers, and reservation stations so that their values can be updated
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How does Tomasulo’s algorithm handle load / store instructions?

A

Just do them in order (memory locations can also have data dependencies)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly