To Snoop or Not to Snoop: Evaluation of Fine-Grain and Coarse-Grain Snoop Filtering Techniques

  • Authors:
  • Jessica Young;Srihari Makineni;Ravishankar Iyer;Don Newell;Adrian Moga

  • Affiliations:
  • Intel Research Labs, , Hillsboro, USA;Intel Research Labs, , Hillsboro, USA;Intel Research Labs, , Hillsboro, USA;Intel Research Labs, , Hillsboro, USA;Intel Research Labs, , Hillsboro, USA

  • Venue:
  • Euro-Par '08 Proceedings of the 14th international Euro-Par conference on Parallel Processing
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Cache coherency protocols implemented in today's shared memory multiprocessor systems use snooping mechanism to keep the data correct and consistent between the caches and the system memory. This requires a large number of snoops sent out on the system interconnection links. However, published research has been shown that a large percentage of these snoops are not necessary or can be eliminated. To detect and eliminate these unnecessary snoops, several techniques have been proposed. But these techniques have not been evaluated using commercial server benchmarks and large caches that are common on today's server platforms. In this paper, we evaluate three popular snoop filtering techniques, namely Region Scout (RS), Region Coherence Array (RCA) and Directory Cache (DC), using four different commercial server workloads. We compare and contrast these three techniques and show how effective these techniques are in eliminating unnecessary snoops. These techniques differ in implementation approaches and the implementation differences yield accuracy and areas tradeoffs. We show 38% to 98% of the last level cache snoops are unnecessary in major commercial server benchmarks. With the snoop filtering techniques we are able to eliminate 35% to 97% of the unnecessary snoops with 1-3% additional die area.