Cache coherence problem is a major concern in the design of shared-memory multiprocessors. As the number of processors scales to higher orders of magnitude, traditional bus-based snoopy cache coherence schemes broadcast as notification medium are no longer adequate. Instead, the directory-based scheme is a promising approach to deal with the large-scale cache coherence problem. However, the storage overhead of (full-map) directory scheme becomes too prohibitive as the system size increases. This dissertation champions the use of hierarchical full-map directory (HFMD) to reduce the storage requirement while still achieving satisfactory performance. The key point is to exploit the locality among shared data access in the parallel programs. The organization and protocol for the HFMD scheme are defined and verified. Storage requirement comparison and trace driven simulation are performed to evaluate the effectiveness of HFMD against other directory schemes. The result is quite encouraging. While reducing the storage overhead to less than 10% of that required by the full-map directory, the performance of the HFMD scheme compares competitively to the full-map directory scheme. The proposed hierarchical full-map directory scheme seems to be an auspicious hardware approach for handling cache coherence in the design of future large-scale multi-processor memory systems. Finally possible extensions for HFMD to enhance its performance are discussed.
Index Terms
- A hierarchical directory scheme for large-scale cache-coherent multiprocessors
Recommendations
A Hierarchical Directory Scheme for Large-Scale Cache-Coherent Multipmcessors
IPPS '92: Proceedings of the 6th International Parallel Processing SymposiumCache coherence problem is a major design issue for shared-memory multiprocessors. As the system size scales, traditional bus-based snoopy cache coherence schemes are no longer adequate. Instead, the directory-based scheme is a promising approach to ...
Two economical directory schemes for large-scale cache coherent multiprocessors
Cache coherence problem is a major issue in the design of shared-memory multiprocessors. As the number of processors grows, traditional bus-based snoopy schemes for cache coherence are no longer adequate. Instead, the directory-based scheme is a ...
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 ...