A simulation study of snoopy cache coherence protocols

Snoopy protocols represent a very popular class of hardware cache coherence solutions, especially suitable for bus-based, shared memory multiprocessors. It is not firmly established which of the two main approaches (write-invalidate or write-broadcast) is superior over the wide range of applications. An enhancement of write-invalidate protocols is proposed, introducing the word invalidation capability. Simulations with a synthetic workload model were performed, in order to analyze its behavior, and to compare it with the best representatives of write-invalidate and write-broadcast protocols. Performance evaluation was done for simulated workloads with a lower and a higher degree of sharing, as well. An attempt is made to model some effects of process switching and migration. Finally, some implications of using a more advanced bus technology on snoopy protocols performance is discussed.<<ETX>>

[1]  Anna R. Karlin,et al.  Competitive snoopy caching , 1986, 27th Annual Symposium on Foundations of Computer Science (sfcs 1986).

[2]  Per Stenström,et al.  A Survey of Cache Coherence Schemes for Multiprocessors , 1990, Computer.

[3]  Randy H. Katz,et al.  Implementing a cache consistency protocol , 1985, ISCA 1985.

[4]  Michel Dubois,et al.  Effects of Cache Coherency in Multiprocessors , 1982, IEEE Trans. Computers.

[5]  Randy H. Katz,et al.  The effect of sharing on the cache and bus performance of parallel programs , 1989, ASPLOS 1989.

[6]  Anoop Gupta,et al.  TEMPORAL, PROCESSOR, AND SPATIAL LOCALITY IN MULTIPROCESSOR MEMORY REFERENCES , 1990 .

[7]  Lawrence C. Stewart,et al.  Firefly: a multiprocessor workstation , 1987, ASPLOS 1987.

[8]  Andrew W. Wilson,et al.  Hierarchical cache/bus architecture for shared memory multiprocessors , 1987, ISCA '87.

[9]  James K. Archibald,et al.  Cache coherence protocols: evaluation using a multiprocessor simulation model , 1986, TOCS.

[10]  Alan Jay Smith,et al.  A class of compatible cache consistency protocols and their support by the IEEE futurebus , 1986, ISCA '86.

[11]  Andrew Wilson,et al.  Shared memory multiprocessors: the right approach to parallel processing , 1989, Digest of Papers. COMPCON Spring 89. Thirty-Fourth IEEE Computer Society International Conference: Intellectual Leverage.

[12]  Prasenjit Biswas,et al.  A snooping cache coherency protocol for hierarchically organized multiprocessors , 1991 .

[13]  Larry Rudolph,et al.  Dynamic decentralized cache schemes for mimd parallel processors , 1984, ISCA 1984.

[14]  James K. Archibald A cache coherence approach for large multiprocessor systems , 1988, ICS '88.

[15]  James R. Goodman Using cache memory to reduce processor-memory traffic , 1998, ISCA '98.