1 Lecture 7: PCM, Cache coherence Topics: handling PCM errors and writes, cache coherence intro.
An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing
-
Upload
nola-joyner -
Category
Documents
-
view
29 -
download
0
description
Transcript of An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing
![Page 1: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/1.jpg)
An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing
CS258 Paper SummaryComputer ScienceJaein Jeong
![Page 2: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/2.jpg)
Migratory Sharing
Pi has exclusive copy of X
Location X
Pi
Pj
Pk
Dirty
Dirty
Invalid
Invalid
Pi
![Page 3: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/3.jpg)
Migratory Sharing
Pj sends read request to X
Location X
Pi
Pj
Pk
Dirty Rd
Dirty
Invalid
Invalid
Pi
![Page 4: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/4.jpg)
Migratory Sharing
D.C. sends flush to the exclusive sharer Pi
Location X
Pi
Pj
Pk
Dirty
RdDirty
Invalid
Invalid
Pi
![Page 5: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/5.jpg)
Migratory Sharing
Pi sends data to Pj and main memoryState changes to shared, with sharer Pi and Pj
Location X
Pi
Pj
Pk
Shared
WBShared
Shared
Invalid
Pi, Pj
WB
![Page 6: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/6.jpg)
Migratory Sharing
Pj sends read exclusive request to X
Location X
Pi
Pj
Pk
Shared RdX
Shared
Shared
Invalid
Pi, Pj
![Page 7: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/7.jpg)
Migratory Sharing
D.C. invalidates Pi
Location X
Pi
Pj
Pk
Shared
Inv.Shared
Shared
Invalid
Pi, Pj
![Page 8: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/8.jpg)
Migratory Sharing
Pi is invalidatedState for memory and Pj changes to dirtywith sharer Pj
Location X
Pi
Pj
Pk
Dirty
Invalid
Dirty
Invalid
Pj
![Page 9: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/9.jpg)
Transaction Cost under W.I.
Two separate requests from Pj: Read and Read Exclusive requests
One flush and one invalidation to PiIdea for improvement One request from Pj After Pi sends data, its state becomes invalid
![Page 10: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/10.jpg)
Migratory Sharing (modified)
Pj sends read request (migrating read) to X
Location X
Pi
Pj
Pk
Dirty Rd
Dirty
Invalid
Invalid
Pi
![Page 11: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/11.jpg)
Migratory Sharing (modified)
D.C. sends read to the exclusive sharer Pi
Location X
Pi
Pj
Pk
Dirty
RdDirty
Invalid
Invalid
Pi
![Page 12: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/12.jpg)
Migratory Sharing (modified)
Pi sends data to Pj and main memoryand invalidates its copy
Location X
Pi
Pj
Pk
Dirty
WBInvalid
Invalid
Invalid
Pi
WB
![Page 13: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/13.jpg)
Migratory Sharing (modified)
D.C. sends ACK to PjState changes with sharer Pj
Location X
Pi
Pj
Pk
Dirty ACK
Invalid
Dirty
Invalid
Pj
![Page 14: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/14.jpg)
Extensions to support migratory sharing
Invalid
Dirty Shared
Migrating
Switches b/w W.I. And migratory protocolExtensions are needed: LW (last writer), N (num sharer) 2 states for home, 1 state for local
![Page 15: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/15.jpg)
Detection of migratory sharing
Condition for migratory sharingRxq_i && N == 2 && LW != i
Location X
Pi
Pj
Pk
Dirty Rd
Dirty
Invalid
Invalid
Pi
![Page 16: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/16.jpg)
Detection of non-migratory sharing
Condition for W-IRr && local state == migrating
<States of Processor Pi>
Location X
Pi
Pj
Pk
Dirty
Rd_j Migrating
Invalid
Invalid
Pi
![Page 17: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/17.jpg)
Experimental Results(Execution Time)
Effective for read-and-modifiy accessesReduces number of writesNo negative effect for non-migratory apps
![Page 18: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/18.jpg)
Experimental Results(Network Traffic)
Same trend with the execution time
![Page 19: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/19.jpg)
Experimental Results(Various memory consistency models)
Adaptive protocol more effective for stricter memory consistency models
![Page 20: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/20.jpg)
Experimental Results(Smaller cache size)
Adaptive protocol more effective when capacity and conflict misses are reduced with larger cache
![Page 21: An Adaptive Cache Coherence Protocol Optimized for Migratory Sharing](https://reader035.fdocuments.us/reader035/viewer/2022062718/56812d92550346895d92aed0/html5/thumbnails/21.jpg)
Discussion
Is the adaptive protocol worthwhile? The effectiveness varies depending
on applications (1% to 54%). Benefits on migratory sharing
Added complexity Increased number of states More complex transition