Cantin et al. proposed coarse-grain coherence tracking (CGCT) that uses a Region Coherence Array (RCA) that closely resembles the PST. The Region Coherence Array tracks sharing information for coarse-grain regions of memory, and the authors evaluate region sizes between 512 bytes and 8KB instead of focusing on just the page size. Rather than tracking the specific sharers of each page with a bit-vector, CGCT tracks a sharing state using special coarse-grain coherence states. This allows CGCT to avoid snoop broadcasts for read-only shared regions where data can safely be fetched directly from memory. Unlike PST, the sharing states of CGCT mean that it cannot be used to send multicast messages for shared regions. Finally, like the PST, it is possible that the RCA will not be able to track the regions associated with all the blocks stored in the cache. Instead of turning off the snoop filtering optimization in this case, CGCT restricts the cache contents by evicting cache blocks for any region that gets evicted from the RCA. However, the RCA is designed such that these evictions are rare in practice.

Cantin, J. F., Lipasti, M. H., and Smith, J. E. 2005. Improving Multiprocessor Performance with Coarse-Grain Coherence Tracking. In Proceedings of the 32nd Annual international Symposium on Computer Architecture (June 04 - 08, 2005). International Symposium on Computer Architecture. IEEE Computer Society, Washington, DC, 246-257. DOI= http://dx.doi.org/10.1109/ISCA.2005.31