Adaptive cache coherency for detecting migratory shared data
- 1 May 1993
- journal article
- Published by Association for Computing Machinery (ACM) in ACM SIGARCH Computer Architecture News
- Vol. 21 (2) , 98-108
- https://doi.org/10.1145/173682.165146
Abstract
Parallel programs exhibit a small number of distinct data-sharing patterns. A common data-sharing pattern, migratory access, is characterized by exclusive read and write access by one processor at a time to a shared datum. We describe a family of adaptive cache coherency protocols that dynamically identify migratory shared data in order to reduce the cost of moving them. The protocols use a standard memory model and processor-cache interface. They do not require any compile-time or run-time software support. We describe implementations for bus-based multiprocessors and for shared-memory multiprocessors that use directory-based caches. These implementations are simple and would not significantly increase hardware cost. We use trace- and execution-driven simulation to compare the performance of the adaptive protocols to standard write-invalidate protocols. These simulations indicate that, compared to conventional protocols, the use of the adaptive protocol can almost halve the number of inter-node messages on some applications. Since cache coherency traffic represents a larger part of the total communication as cache size increases, the relative benefit of using the adaptive protocol also increases.Keywords
This publication has 15 references indexed in Scilit:
- Cooperative shared memoryPublished by Association for Computing Machinery (ACM) ,1992
- Experimental comparison of memory management policies for NUMA multiprocessorsACM Transactions on Computer Systems, 1991
- Implementation and performance of MuninPublished by Association for Computing Machinery (ACM) ,1991
- Tolerating latency through software-controlled prefetching in shared-memory multiprocessorsJournal of Parallel and Distributed Computing, 1991
- LimitLESS directoriesPublished by Association for Computing Machinery (ACM) ,1991
- The directory-based cache coherence protocol for the DASH multiprocessorPublished by Association for Computing Machinery (ACM) ,1990
- The implementation of a coherent memory abstraction on a NUMA multiprocessor: experiences with platinumPublished by Association for Computing Machinery (ACM) ,1989
- Simple but effective techniques for NUMA memory managementPublished by Association for Computing Machinery (ACM) ,1989
- Analysis of cache invalidation patterns in multiprocessorsPublished by Association for Computing Machinery (ACM) ,1989
- Efficient synchronization primitives for large-scale cache-coherent multiprocessorsPublished by Association for Computing Machinery (ACM) ,1989