1
- https://doi.org/10.1145/381792.195572
Simple compiler algorithms to reduce ownership overhead in cache coherence protocols
- Nov 1, 1994
- ACM SIGOPS Operating Systems Review
- Jonas Skeppstedt +1 more
We study in this paper the design and efficiency of compiler algorithms that remove ownership overhead in shared-memory multiprocessors with write-invalidate protocols. These algorithms detect loads followed by stores to the same address. Such loads are marked and constitute a hint to the cache to obtain an exclusive copy of the block. We consider three algorithms where the first one focuses on load-store sequences within each basic block of code and the other two analyse the existence of load-store sequences across basic blocks at the intra-procedural level. Since the dataflow analysis we adopt is a trivial variation of live-variable analysis, the algorithms are easily incorporated into a compiler. Through detailed simulations of a cache-coherent NUMA architecture using five scientific parallel benchmark programs, we find that the algorithms are capable of removing over 95% of the separate ownership acquisitions. Moreover, we also find that even the simplest algorithm is comparable in efficiency with previously proposed hardware-based adaptive cache coherence protocols to attack the same problem.
- # Write-invalidate Protocols
- # Cache Coherence Protocols
- # Compiler Algorithms
- # Shared-memory Multiprocessors
- # Dataflow Analysis
- # Basic Block
- # Overhead In Protocols
- # Simple Algorithms
- # Separate Acquisitions
- # Simulations Of Architecture