Caches have the potential to provide multiprocessors with an automatic mechanism for reducing both network traffic and average memory access latency. However, cache-based systems must address the problem of cache coherence. This thesis presents the results of the search for a cache coherence solution for Alewife, a large-scale multiprocessor being built at MIT. The research focuses on coherence protocols that use a directory, a list of cached copies of data, to avoid the need for a system-wide broadcast mechanism. The structure and the implementation of a number of coherence schemes are evaluated with coupled and decoupled simulation techniques. In addition to comparing the protocols in terms of hardware overhead and performance, the thesis reports on the experience gained by implementing several different schemes in ASIM, the Alewife machine simulator. The protocol search reaches two major conclusions: First, by using system-level optimizations, it is possible to use caches to build large-scale shared-memory multiprocessors. Second, the Alewife machine should use the integrated systems approach - handling common cases in hardware and exceptional cases in software - to solve the cache coherence problem.
Report Downloads
Cited By
- Fiske S and Dally W Thread prioritization Proceedings of the 1st IEEE Symposium on High-Performance Computer Architecture
- Mukherjee S and Hill M An evaluation of directory protocols for medium-scale shared-memory multiprocessors Proceedings of the 8th international conference on Supercomputing, (64-74)
- Wood D, Chandra S, Falsafi B, Hill M, Larus J, Lebeck A, Lewis J, Mukherjee S, Palacharla S and Reinhardt S Mechanisms for cooperative shared memory Proceedings of the 20th annual international symposium on computer architecture, (156-167)
- Wood D, Chandra S, Falsafi B, Hill M, Larus J, Lebeck A, Lewis J, Mukherjee S, Palacharla S and Reinhardt S (1993). Mechanisms for cooperative shared memory, ACM SIGARCH Computer Architecture News, 21:2, (156-167), Online publication date: 1-May-1993.
- Brewer E and Weihl W Developing parallel applications using high-performance simulation Proceedings of the 1993 ACM/ONR workshop on Parallel and distributed debugging, (158-168)
- Brewer E and Weihl W (2019). Developing parallel applications using high-performance simulation, ACM SIGPLAN Notices, 28:12, (158-168), Online publication date: 1-Dec-1993.
Recommendations
Directory-Based Cache Coherence in Large-Scale Multiprocessors
The usefulness of shared-data caches in large-scale multiprocessors, the relative merits of different coherence schemes, and system-level methods for improving directory efficiency are addressed. The research presented is part of an effort to build a ...
Simulation based Performance Study of Cache Coherence Protocols
INIS '15: Proceedings of the 2015 IEEE International Symposium on Nanoelectronic and Information Systems (iNIS)Cache coherence protocol maintains data consistency between different cores / processors in a shared memory multi-core (MC) / multi-processor (MP) system. Coherency can be achieved at the cost of increased miss rate because of invalidations. Coherency ...