The Limits of Concurrency in Cache Coherence
Blake A. Hechtman, Daniel J. Sorin · 2012
Prior work has shown how to improve the performance of cache coherence protocols by using logical time to enable concurrency that would not be legal in physical time. We hypothesized that extending this prior work to enable even greater concurrency would further improve performance, and we developed two novel techniques that leverage logical time to increase concurrency. Both schemes appear to offer significant benefits in concurrency, yet the primary result of this paper is negative. The potential benefits are clear, but common software idioms tend not to be able to exploit this potential. This negative result contributes insight into the limits of concurrency in cache coherence and informs the research community about an avenue of research that appears promising but is unlikely to yield significant gains.