Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network

  Advanced Search  

Cache-Oblivious Algorithms EXTENDED ABSTRACT

Summary: Cache-Oblivious Algorithms
Matteo Frigo Charles E. Leiserson Harald Prokop Sridhar Ramachandran
MIT Laboratory for Computer Science, 545 Technology Square, Cambridge, MA 02139
Abstract This paper presents asymptotically optimal algo-
rithms for rectangular matrix transpose, FFT, and sorting on
computers with multiple levels of caching. Unlike previous
optimal algorithms, these algorithms are cache oblivious: no
variables dependent on hardware parameters, such as cache
size and cache-line length, need to be tuned to achieve opti-
mality. Nevertheless, these algorithms use an optimal amount
of work and move data optimally among multiple levels of
cache. For a cache with size Z and cache-line length L where
Z = L2 the number of cache misses for an m n ma-
trix transpose is 1 + mn=L. The number of cache misses
for either an n-point FFT or the sorting of n numbers is
1 + n=L1 + logZ n. We also give an mnp-work al-
gorithm to multiply an m n matrix by an n p matrix that
incurs 1+ mn+ np+ mp=L + mnp=L


Source: Arge, Lars - Department of Computer Science, Aarhus Universitet


Collections: Computer Technologies and Information Sciences