50 likes | 63 Vues
The Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors. A. T. Clements, M. F. Kaashoek, N.Zeldovich, R. T. Morris, and E. Kohler † MIT CSAIL and † Harvard. Paper Highlights.
E N D
The Scalable Commutativity Rule:Designing Scalable Software for Multicore Processors A. T. Clements, M. F. Kaashoek, N.Zeldovich,R. T. Morris, and E. Kohler† MIT CSAIL and †Harvard
Paper Highlights • Presents an general efficient mechanism to manage pages of different sizes in a VM system • Superpages • Objective is to address the limitations of extant translation lookaside buffers (TLB).
MESI Coherency protocol (I) • Write-through cache and memory consistency protocol • Name refers to four possible states for cache lines • Modified (locked and dirty) • Exclusive (locked and clean) • Shared (unlocked and clean) • Invalid • Common-sense transitions between states
Snooping • Any cache that hold a line in the modified statemust intercept and service all attempted read accesses to that line from other caches • Any cache that holds a line in the shared state must act on invalidate or request-for-ownership broadcasts from other caches • A cache that holds a line in the Exclusive state must snoop all read requests to that line from all other caches, and move the line to shared state if needed
Optimizations • Store buffers allow caches to write into invalid lines • Invalidation queues contain invalidation requests that have not yet been acted upon • Weaken consistency and require barriers • Store barriers flush the store buffers • Read barrier flush the invalidation queue