advanced · multicore

When Does NUMA Start to Matter?

What is NUMA, and at what point does it start to affect application performance?

Practical scenario

A batch job scales well to 16 threads on a laptop and poorly to 64 on a large two-socket server. Someone proposes rewriting the parallel decomposition.

What it tests

  • Understanding that memory access cost depends on placement
  • Knowledge of first-touch allocation
  • Whether the candidate knows when it can be safely ignored

Lessons behind this question