Presentation is loading. Please wait.

Presentation is loading. Please wait.

© Wenisch 2012 Lecture 11 Slide 1 EECS 570 Designing a Directory Protocol: Nomenclature Local Node (L) r Node initiating the transaction we care about.

Similar presentations


Presentation on theme: "© Wenisch 2012 Lecture 11 Slide 1 EECS 570 Designing a Directory Protocol: Nomenclature Local Node (L) r Node initiating the transaction we care about."— Presentation transcript:

1 © Wenisch 2012 Lecture 11 Slide 1 EECS 570 Designing a Directory Protocol: Nomenclature Local Node (L) r Node initiating the transaction we care about Home Node (H) r Node wore directory/main memory for the block live Remote Node (R) r Any other node that participates in the transaction

2 © Wenisch 2012 Lecture 11 Slide 2 EECS 570 Read Transaction L has a cache miss on a load instruction L L H H 1: Get-S 2: Data

3 © Wenisch 2012 Lecture 11 Slide 3 EECS 570 4-hop Read Transaction L has a cache miss on a load instruction r Block was previously in modified state at R L L H H 1: Get-S 4: Data R R State: M Owner: R 2: Recall 3: Recall-Ack+Data State: S D Req: L State: S Sharers: R, L State: S Sharers: R, L

4 © Wenisch 2012 Lecture 11 Slide 4 EECS 570 3-hop Read Transaction L has a cache miss on a load instruction r Block was previously in modified state at R L L H H 1: Get-S 3: Data R R State: M Owner: R 2: Fwd-Get-S 3: Data State: S D Sharers: L, R State: S Sharers: L, R

5 © Wenisch 2012 Lecture 11 Slide 5 EECS 570 An Example Race: Writeback & Read L has dirty copy, wants to write back to H R concurrently sends a read to H L L H H 1: Put-M+Data 5: Data R R State: M Owner: L 2: Get-S 3: Fwd-Get-S 4: Race ! Put-M & Fwd-Get-S 6: MI A State: S D Sharers: L,R SIASIA SIASIA Race! Final State: S Race! Final State: S 7: Put-Ack To make your head really hurt: Can optimize away SI A & Put-Ack! L and H each know the race happened, don’t need more msgs. To make your head really hurt: Can optimize away SI A & Put-Ack! L and H each know the race happened, don’t need more msgs.

6 © Wenisch 2012 Lecture 11 Slide 6 EECS 570 Store-Store Race Line is invalid, both L and R race to obtain write permission L L H H 1: Get-M 6: Fwd-Get-M R R State: M Owner: L Get-M 4: Data [ack=0] 7: Race! Stall for Data, do 1 store, then Fwd to R 3: Fwd-Get-M to L; New Owner: R Fwd-Get-M to L; New Owner: R 5: 8: Data [ack=0] IM AD

7 © Wenisch 2012 Lecture 11 Slide 7 EECS 570 Worst-case scenario? L evicts dirty copy, R concurrently seeks write permission L L H H 1: Put-M 6: Put-Ack R R State: M Owner: L 2: Get-M 3: Fwd-Get-M Race! Put-M floating around! Wait till its gone… 5: Put-M from NonOwner: Race! L waiting to ensure Put-M gone… Put-M from NonOwner: Race! L waiting to ensure Put-M gone… 4: Data [ack=0] MI A II A


Download ppt "© Wenisch 2012 Lecture 11 Slide 1 EECS 570 Designing a Directory Protocol: Nomenclature Local Node (L) r Node initiating the transaction we care about."

Similar presentations


Ads by Google