In shared-memory multiprocessor systems, cache interventions from
different sourcing caches can result in different cache intervention
costs. With location-aware cache coherence, when a cache receives a data
request, the cache can determine whether sourcing the data from the cache
will result in less cache intervention cost than sourcing the data from
another cache. The decision can be made based on appropriate information
maintained in the cache or collected from snoop responses from other
caches. If the requested data is found in more than one cache, the cache
that has or likely has the lowest cache intervention cost is generally
responsible for supplying the data. The intervention cost can be measured
by performance metrics that include, but are not limited to,
communication latency, bandwidth consumption, load balance, and power
consumption.