Cache Contention
Cache contention occurs when multiple CPU cores compete for access to the same cache line or memory region, causing performance degradation as the cache coherence protocol repeatedly invalidates and re-fetches data. It is a broader phenomenon than false sharing: while false sharing involves logically independent data that happens to share a cache line, cache contention also includes legitimate sharing where multiple threads genuinely need access to the same variable. The effect is the same — wasted bus cycles, stalled pipelines, and throughput that collapses as core count increases. On NUMA architectures, cache contention becomes even more severe because remote memory accesses carry additional latency.
Cache contention is the fundamental limit of multicore scaling. It does not matter how many cores you add if they are all fighting over the same memory. The theoretical peak of parallel speedup is bounded not by Amdahl's law but by the memory bus — and the bus does not care about your algorithms.