TY - JOUR
T1 - Cache Coherence in Large-Scale Shared-Memory Multiprocessors
T2 - Issues and Comparisons
AU - Lilja, David J.
PY - 1993/1/9
Y1 - 1993/1/9
N2 - Due to data spreading among processors and due to the cache coherence problem, private data caches have not been as effective in reducing the average memory delay in multiprocessors as in uniprocessors. A wide variety of mechanisms have been proposed for mamtammg cache coherence m large-scale shared-memory multiprocessors, makmg it difficult to compare them perform ante and implementation implications To help the computer architect understand some of the trade-offs involved, this paper surveys current cache coherence mechanisms and identifies several issues critical to thendeslgn These design issues include: (1) the cokerence detection strategy, through which possibly incoherent memory accesses are detected either statically at compile-time, or dynamically at run-time; (2) the coherence enforcement strategy, such as updating or mvalidatmg, used to ensure that stale cache entries are never referenced by a processor; (3) how the preczslon of block-sharzng znformatzon can be changed to trade-off the Implementation cost and performance of the coherence mechamsm; and (4) how the cache block szze affects the performance of the memory system. Trace-driven simulations are used to compare the performance and implementation impacts of these different issues, Additionally, hybrzd strategies are presented that can enhance tbe performance of the multiprocessor memory system by combining several different coherence mecb anisms into a single system.
AB - Due to data spreading among processors and due to the cache coherence problem, private data caches have not been as effective in reducing the average memory delay in multiprocessors as in uniprocessors. A wide variety of mechanisms have been proposed for mamtammg cache coherence m large-scale shared-memory multiprocessors, makmg it difficult to compare them perform ante and implementation implications To help the computer architect understand some of the trade-offs involved, this paper surveys current cache coherence mechanisms and identifies several issues critical to thendeslgn These design issues include: (1) the cokerence detection strategy, through which possibly incoherent memory accesses are detected either statically at compile-time, or dynamically at run-time; (2) the coherence enforcement strategy, such as updating or mvalidatmg, used to ensure that stale cache entries are never referenced by a processor; (3) how the preczslon of block-sharzng znformatzon can be changed to trade-off the Implementation cost and performance of the coherence mechamsm; and (4) how the cache block szze affects the performance of the memory system. Trace-driven simulations are used to compare the performance and implementation impacts of these different issues, Additionally, hybrzd strategies are presented that can enhance tbe performance of the multiprocessor memory system by combining several different coherence mecb anisms into a single system.
UR - http://www.scopus.com/inward/record.url?scp=0027662358&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=0027662358&partnerID=8YFLogxK
U2 - 10.1145/158439.158907
DO - 10.1145/158439.158907
M3 - Article
AN - SCOPUS:0027662358
SN - 0360-0300
VL - 25
SP - 303
EP - 338
JO - ACM Computing Surveys
JF - ACM Computing Surveys
IS - 3
ER -