Lecture 5 - Instruction Level Parallelism (OOO) Flashcards

(3 cards)

1
Q

Dynamic Scheduling [Definition, advantages and disadvantages]

A
  • Dynamic scheduling rearranges the order of instructions to reduce stalls while maintaining data flow.
  • (Advantage) It handles cases where dependencies are unknown at compile time and tolerates cache delays (through hiding latency).
  • (Disadvantage) It increases hardware complexity and complicates exception handling.
  • Out-of-order execution and completion create the possibility for WAR (Write After Read) and WAW (Write After Write) hazards
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Register Renaming (Definition, Explain Mechanism)

A
  • Register Renaming is a technique used to allow instructions to use different physical registers, even if its the same logical register.
  • Register renaming is introduced in hardware to minimize WAR and WAW hazards, and also allow out-of-order execution.
  • It is provided by reservation stations (RS)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Tomasulo’s Algorithm
(Definition, Mechanism - 3 Steps IEW)

A

Tomasulo’s Algorithm is a technique that uses dynamic scheduling of instructions that allow out-of-oder executions.

Tomasulo’s Algorithm involves three main steps:

  1. Issue:
    - Get the next instruction from the FIFO queue.
    - If a reservation station is available, issue the instruction to the RS with operand values (if available).
    - If operand values are not available, stall the instruction.
  2. Execute:
    - When an operand becomes available, store it in all RSs waiting for it.
    - When all operands are ready in an RS, execute the instruction.
  3. Write Result:
    - Write the result of the operation onto the CDB.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly