Presentation is loading. Please wait.

Presentation is loading. Please wait.

Out-of-Order Execution (OoOE)

Similar presentations


Presentation on theme: "Out-of-Order Execution (OoOE)"— Presentation transcript:

1 Out-of-Order Execution (OoOE)
CPU Optimization Out-of-Order Execution (OoOE)

2 Stalling a Checkout Line Ever forgot to get a barcode?

3 ALU CPU with separate instruction and data caches FLASH RAM
Instruction Cache Data Cache ALU

4 Pipeline with instruction & data cache
An Ideal Pipeline Pipeline with instruction & data cache Instruction NOT in cache Operand NOT in cache

5 Example: How long would this program take to execute?
R1 = R2 R2 = R1 + R3 R4 = R3 + R5 *R3, R4, R5 Already in data cache

6 R1=R2 F D A E W R2=R1+R3 R4=R3+R5 R4=R3+R5 F E A W R1=R2 D R2=R1+R3
Sequential Execution R1=R2 F D A E W R2=R1+R3 R4=R3+R5 Time = 12 Units Re-ordered Execution R4=R3+R5 F E A W R1=R2 D R2=R1+R3 Time = 12 Units

7 The CDC 6600. The first computer to use OoOE (1964)
Source: wikipedia

8 Reservation Stations (Buffer)
R1=R2 RAM R2=R1+R3 cache R4=R3+R5

9 OoOE Hardware


Download ppt "Out-of-Order Execution (OoOE)"

Similar presentations


Ads by Google