Cache-Oblivious Algorithms
A cache-oblivious algorithm is designed to achieve good memory locality across multiple levels of a memory hierarchy without knowing cache sizes, block sizes, or exact hardware parameters. Recursive divide-and-conquer algorithms naturally expose progressively smaller working sets, allowing the hardware cache system to exploit locality.
Does not require cache-size tuning.
Targets good spatial and temporal locality.
Can perform well across different cache levels.
Recursive matrix algorithms are classic examples.
Different from cache-aware algorithms, which explicitly use hardware parameters.