What is False sharing?

A slowdown in which threads update different variables that happen to share a cache line, so the line bounces between cores.

Field: Multicore & Synchronization

False sharing in the explanations

Questions that mention False sharing (4)

  1. Which describes false sharing in a multithreaded program?
  2. False sharing occurs with an array of per-thread counters such as "long cnt[8];". What is the most suitable fix?
  3. What is the typical size of a cache line (cache block) in many current CPUs?
  4. Which is NOT a reason a parallel program fails to scale as cores are added?

Related terms

Cache line Spatial locality Speedup Amdahl's law ABA problem Acquire-release semantics Atomic instruction Barrier synchronization Bus snooping Compare-and-swap

Back to the glossary