Overview
In a multi-core system, each core has its own local cache (L1/L2). Cache coherency ensures that if one core modifies a piece of data, all other cores see the updated version, preventing them from working with stale data.
Mechanisms
- Snooping: Caches monitor the system bus to see if other cores are modifying data they have cached.
- Directory-based: A central directory keeps track of which caches hold which pieces of data.
Importance
Critical for the correct operation of multi-threaded software where multiple cores work on the same data simultaneously.