19
Slide 1 EECS 470 © Wenisch 2009 EECS 470 Midterm Review Fall 2019 Prof. Ron Dreslinski http://www.eecs.umich.edu/courses/eecs470

EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 1EECS 470

© Wenisch 2009

EECS 470Midterm Review

Fall 2019

Prof. Ron Dreslinski

http://www.eecs.umich.edu/courses/eecs470

Page 2: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 2EECS 470

© Wenisch 2009

Announcements

Exam is Thursday, 10/17 7:00-8:30 in 1571 GGBLr I recommend bringing a scientific calculator

Page 3: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 3EECS 470

© Wenisch 2009

Key Concepts

•Parallelism

• Locality

•Amortization

•Speculation

Page 4: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 4EECS 470

© Wenisch 2009

Performance – Key PointsAmdahl’s law

Soverall = 1 / ( (1-f) + f/S )Iron law

Averaging Techniques

CycleTime

nInstructioCycles

ProgramnsInstructio

ProgramTime

´´=

å =

n

i iTimen 1

1å =

n

i

iRate

n

1

1 nn

iiRatioÕ

=1

ArithmeticTime

HarmonicRates

GeometricRatios

Page 5: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 5EECS 470

© Wenisch 2009

Stuff from the first half• Averaging techniques• Instruction-level parallelism• Performance impact of in-order vs OoO

Page 6: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 6EECS 470

© Wenisch 2009

Power

• Why do power and energy matter for various markets?• Dynamic, leakage• Power ~ ½ C V2 A f• Performance ~ f ~ V• Know how to compare voltage/freq scaling to other techniques• Power vs. energy• PDP, EDP, ED2P

Page 7: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 7EECS 470

© Wenisch 2009

Hazards

• Register data hazards• WAR, WAW, RAW• How do we eliminate WAR, WAW hazards?

• Control hazards• Structural hazards• Memory data hazards

Page 8: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 8EECS 470

© Wenisch 2009

Instruction level parallelism

• What is ILP?• How is it different from instructions per cycle?• What is the critical path?• What is a data flow graph?

Page 9: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 9EECS 470

© Wenisch 2009

Scoreboarding

• How does the scoreboard machine improve over 5-stage pipe?• What are its limitations?

Page 10: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 10EECS 470

© Wenisch 2009

Tomasulo’s algorithm

• What does it do?• What hazards does it address?• What hazards remain?• What are its limitations?

Page 11: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 11EECS 470

© Wenisch 2009

Precise Interrupts

• What are precise interrupts?• How do we implement them?• What impact does maintaining precise state have on

performance?

Page 12: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 12EECS 470

© Wenisch 2009

P6/R10K Microarchitecture

• What do the key structures contain?• What are the inputs/outputs from each structure?

• What are the advantages and disadvantages of P6/R10K?

Page 13: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 13EECS 470

© Wenisch 2009

R10K Cycle # 0ROBht # Insn T Told S X Cth 1 R3=R1*R2

2 R1=R3+R23 R4=R4+10 4 R2=R2+55 R3=R4+R2

Map TableReg T+r1 p1+r2 p2+r3 p3+r4 p4+

Reservation Stations# Instruction # T T1 T21234

CDBT(s)

Free ListP5,p6,p7,p8,p9,p10

Page 14: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 14EECS 470

© Wenisch 2009

R10K Cycle # 1ROBht # Insn T Told S X Ch 1 R3=R1*R2 p5 p3t 2 R1=R3+R2 p6 p1

3 R4=R4+10 4 R2=R2+55 R3=R4+R2

Map TableReg T+r1 p6r2 p2+r3 p5r4 p4+

Reservation Stations# Instruction # T T1 T21 (1) p5 p1+ p2+2 (2) p6 p5 p2+34

CDBT(s)

Free Listp5,p6,p7,p8,p9,p10

Page 15: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 15EECS 470

© Wenisch 2009

R10K Cycle # 2ROBht # Insn T Told S X Ch 1 R3=R1*R2 p5 p3 c2

2 R1=R3+R2 p6 p13 R4=R4+10 p7 p4

t 4 R2=R2+5 p8 p25 R3=R4+R2

Map TableReg T+r1 p6r2 p8r3 p5r4 p7

Reservation Stations# Instruction # T T1 T21 (1) p5 p1+ p2+2 (2) p6 p5 p2+3 (3) p7 p4+ -4 (4) p8 p2+ -

CDBT(s)

Free Listp7,p8,p9,p10

Page 16: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 16EECS 470

© Wenisch 2009

R10K Cycle # 3ROBht # Insn T Told S X Ch 1 R3=R1*R2 p5 p3 c2 c3

2 R1=R3+R2 p6 p13 R4=R4+10 p7 p4 c34 R2=R2+5 p8 p2 c3

t 5 R3=R4+R2 p9 p5

Map TableReg T+r1 p6r2 p8r3 p9r4 p7

Reservation Stations# Instruction # T T1 T21 (5) p9 p7 p82 (2) p6 p5 p2+3 (3) p7 p4+ -4 (4) p8 p2+ -

CDBT(s)

Free Listp9,p10

Page 17: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 17EECS 470

© Wenisch 2009

R10K Cycle # 4ROBht # Insn T Told S X Ch 1 R3=R1*R2 p5 p3 c2 c3+

2 R1=R3+R2 p6 p13 R4=R4+10 p7 p4 c3 c44 R2=R2+5 p8 p2 c3 c4

t 5 R3=R4+R2 p9 p5

Map TableReg T+r1 p6r2 p8r3 p9r4 p7

Reservation Stations# Instruction # T T1 T21 (5) p9 p7 p82 (2) p6 p5 p2+34

CDBT(s)

Free Listp10

Page 18: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 18EECS 470

© Wenisch 2009

R10K Cycle # 5ROBht # Insn T Told S X Ch 1 R3=R1*R2 p5 p3 c2 C3+ c5

2 R1=R3+R2 p6 p1 c53 R4=R4+10 p7 p4 c3 c4 c54 R2=R2+5 p8 p2 c3 c4

t 5 R3=R4+R2 p9 p5

Map TableReg T+r1 p6r2 p8r3 p9r4 p7+

Reservation Stations# Instruction # T T1 T21 (5) p9 p7+ p82 (2) p6 p5+ p2+34

CDBT(s)p5,p7

Free Listp10

Page 19: EECS 470 Midterm ReviewEECS 470 Slide 19 © Wenisch 2009 R10K Cycle # 6 ROB ht#Insn T Told S X C t1R3=R1*R2 P3 or p10p9 h2R1=R3+R2 p6 p1c5c6 3R4=R4+10 p7 …

Slide 19EECS 470

© Wenisch 2009

R10K Cycle # 6ROBht # Insn T Told S X Ct 1 R3=R1*R2 P3 or p10 p9

h 2 R1=R3+R2 p6 p1 c5 c6

3 R4=R4+10 p7 p4 c3 c4 c5

4 R2=R2+5 p8 p2 c3 c4 c6

5 R3=R4+R2 p9 p5 c6

Map TableReg T+r1 p6r2 p8+r3 p9r4 p7+

Reservation Stations# Instruction # T T1 T21 (5) p9 p7+ p8+2 (6) Or (1) p3 or p10 p6 p8+34

CDBT(s)p8

Free List(p10 or p3) Opposite of T