Using prediction to accelerate coherence protocols
- 16 April 1998
- journal article
- Published by Association for Computing Machinery (ACM) in ACM SIGARCH Computer Architecture News
- Vol. 26 (3) , 179-190
- https://doi.org/10.1145/279361.279386
Abstract
Most large shared-memory multiprocessors use directory protocols to keep per-processor caches coherent. Some memory references in such systems, however, suffer long latencies for misses to remotely-cached blocks. To ameliorate this latency, researchers have augmented standard coherence protocols with optimizations for specific sharing patterns, such as read-modify-write, producer-consumer, and migratory sharing. This paper seeks to replace these directed solutions with general prediction logic that monitors coherence activity and triggers appropriate coherence actions.This paper takes the first step toward using general prediction to accelerate coherence protocols by developing and evaluating the Cosmos coherence message predictor. Cosmos predicts the source and type of the next coherence message for a cache block using logic that is an extension of Yeh and Patt's two-level PAp branch predictor. For five scientific applications running on 16 processors, Cosmos has prediction accuracies of 62% to 93%. Cosmos' high prediction accuracy is a result of predictable coherence message signatures that arise from stable sharing patterns of cache blocks.Keywords
This publication has 24 references indexed in Scilit:
- Evaluation of a Competitive-Update Cache Coherence Protocol with Migratory Data DetectionJournal of Parallel and Distributed Computing, 1996
- TeapotPublished by Association for Computing Machinery (ACM) ,1996
- Shared memory consistency models: a tutorialComputer, 1996
- Reducing false sharing on shared memory multiprocessors through compile time data transformationsPublished by Association for Computing Machinery (ACM) ,1995
- Efficient support for irregular applications on distributed-memory machinesPublished by Association for Computing Machinery (ACM) ,1995
- Cooperative shared memoryPublished by Association for Computing Machinery (ACM) ,1992
- Cache invalidation patterns in shared-memory multiprocessorsIEEE Transactions on Computers, 1992
- An effective on-chip preloading scheme to reduce data access penaltyPublished by Association for Computing Machinery (ACM) ,1991
- LimitLESS directoriesPublished by Association for Computing Machinery (ACM) ,1991
- Competitive snoopy cachingAlgorithmica, 1988