Skip to content

Cache-Conscious Design

Data structure layout and access patterns determine cache efficiency - organizing data to match access patterns can yield order-of-magnitude performance improvements without algorithmic changes.

Tension Addressed

Locality vs. Abstraction

Recognizable As

Array-of-structs vs struct-of-arrays decisions, data-oriented design, hot/cold splitting, linear data structures outperforming pointer-heavy alternatives despite worse theoretical complexity.

Canonical Sources

Drepper, "What Every Programmer Should Know About Memory" (2007); Mike Acton, "Data-Oriented Design" (2014)

Transfers To

Database column stores, game engine entity systems, scientific computing, high-frequency trading systems

A linked list with O(1) insertion can be slower than an array with O(n) insertion for small n due to cache effects. Theoretical complexity ignores the memory hierarchy; practical performance cannot.