Cache-oblivious algorithms

N/ACitations
Citations of this article
268Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Computers with multiple levels of caching have traditionally required techniques such as data blocking in order for algorithms to exploit the cache hierarchy effectively. These “cache-aware” algorithms must be properly tuned to achieve good performance using so-called “voodoo” parameters which depend on hardware properties, such as cache size and cache-line length. Surprisingly, however, for a variety of problems – including matrix multiplication, FFT, and sorting – asymptotically optimal “cache-oblivious” algorithms do exist that contain no voodoo parameters. They perform an optimal amount of work and move data optimally among multiple levels of cache. Since they need not be tuned, cache-oblivious algorithms are more portable than traditional cache-aware algorithms. We employ an “ideal-cache” model to analyze these algorithms.We prove that an optimal cache-oblivious algorithm designed for two levels of memory is also optimal across a multilevel cache hierarchy. We also showthat the assumption of optimal replacement made by the ideal-cache model can be simulated efficiently by LRU replacement. We also provide some empirical results on the effectiveness of cache-oblivious algorithms in practice.

Cite

CITATION STYLE

APA

Leiserson, C. E. (2003). Cache-oblivious algorithms. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 2653, p. 5). Springer Verlag. https://doi.org/10.1007/3-540-44849-7_5

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free