Design of an Adaptive Cache Coherence Protocol for Large Scale Multiprocessors

A large scale, cache-based multiprocessor that is interconnected by a hierarchical network such as hierarchical buses or a multistage interconnection network (MIN) is considered. An adaptive cache coherence scheme for the system is proposed based on a hardware approach that handles multiple shared reads efficiently. The new protocol allows multiple copies of a shared data block in the hierarchical network, but minimizes the cache coherence overhead by dynamically partitioning the network into sharing and nonsharing regions based on program behavior. The new cache coherence scheme effectively utilizes the bandwidth of the hierarchical networks and exploits the locality properties of parallel algorithms. Simulation experiments have been carried out to analyze the performance of the new protocol. The simulation results show that the new protocol gives 15% to 30% performance improvement over some existing cache coherence schemes on similar systems for a wide range of workload parameters. >

[1]  Laxmi N. Bhuyan,et al.  Analysis and Comparison of Cache Coherence Protocols for a Packet-Switched Multiprocessor , 1989, IEEE Trans. Computers.

[2]  Mary K. Vernon,et al.  Performance Analysis of Hierarchical Cache-Consistent Multiprocessors , 1989, Perform. Evaluation.

[3]  Marc Snir,et al.  The Performance of Multistage Interconnection Networks for Multiprocessors , 1983, IEEE Transactions on Computers.

[4]  Qing Yang,et al.  Performance analysis of a cache-coherent multiprocessor based on hierarchical multiple buses , 1990, Proceedings. PARBASE-90: International Conference on Databases, Parallel Architectures, and Their Applications.

[5]  J. Zahorjan,et al.  Introducing memory into the switch elements of multiprocessor interconnection networks , 1989, ISCA '89.

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

[7]  Dharma P. Agrawal,et al.  Performance of multiprocessor interconnection networks , 1989, Computer.

[8]  Paul Feautrier,et al.  A New Solution to Coherence Problems in Multicache Systems , 1978, IEEE Transactions on Computers.

[9]  Janak H. Patel Performance of Processor-Memory Interconnections for Multiprocessors , 1981, IEEE Transactions on Computers.

[10]  Calvin K. Tang Cache system design in the tightly coupled multiprocessor system , 1976, AFIPS '76.

[11]  Michel Dubois,et al.  Shared Data Contention in a Cache Coherence Protocol , 1988, ICPP.

[12]  S. Sitharama Iyengar,et al.  Information integration and synchronization in distributed sensor networks , 1991, IEEE Trans. Syst. Man Cybern..

[13]  Leslie Lamport,et al.  How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs , 2016, IEEE Transactions on Computers.

[14]  Anoop Gupta,et al.  Memory-reference characteristics of multiprocessor applications under MACH , 1988, SIGMETRICS 1988.

[15]  Laxmi N. Bhuyan,et al.  Analysis of MIN Based Multiprocessors with Private Cache Memories , 1989, ICPP.

[16]  Trevor N. Mudge,et al.  Crosspoint Cache Architectures , 1987, ICPP.

[17]  Michel Dubois,et al.  Correct memory operation of cache-based multiprocessors , 1987, ISCA '87.

[18]  Pen-Chung Yew,et al.  Multiprocessor cache design considerations , 1987, ISCA '87.

[19]  Laxmi N. Bhuyan,et al.  A Queueing Network Model for a Cache Coherence Protocol on Multiple-bus Multiprocessors , 1988, International Conference on Parallel Processing.

[20]  Philip J. Woest,et al.  The Wisconsin multicube: a new large-scale cache-coherent multiprocessor , 1988, ISCA '88.

[21]  Alexander V. Veidenbaum,et al.  A cache coherence scheme with fast selective invalidation , 1988, ISCA '88.

[22]  Alexander V. Veidenbaum,et al.  A Compiler-Assisted Cache Coherence Solution for Multiprcessors , 1986, ICPP.