Abstract
Intuitively, a cache-oblivious algorithm implements an adaptive strategy which runs efficiently on any memory hierarchy without requiring previous knowledge of the parameters of the hierarchy. For this reason, cache-obliviousness is an attractive feature of an algorithm meant for a global computing environment, where software may be run on a variety of different platforms for load management purposes. In this paper we present a negative result on cache-obliviousness, namely, we show that an optimal cache-oblivious algorithm for the fundamental primitive of matrix transposition cannot exist without the tall cache assumption, which forces the (unknown) parameters of the memory hierarchy to satisfy a certain technical relation. Our contribution specializes the result of Brodal and Fagerberg for general permutations to matrix transposition, and provides further evidence that the tall cache assumption is often necessary to attain optimality in the context of cache-oblivious algorithms.
This work was supported in part by the EU/IST Project “AEOLUS”, and by MIUR of Italy under project “ALGONEXT”.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Aggarwal, A., Vitter, J.S.: The input/output complexity of sorting and related problems. Cacm 31(9), 1116–1127 (1988)
Vitter, J.S.: External memory algorithms and data structures. ACM Comput. Surv. 33(2), 209–271 (2001)
Frigo, M., Leiserson, C.E., Prokop, H., Ramachandran, S.: Cache-oblivious algorithms. In: Proc. of 40th IEEE Symp. on Foundations of Computer Science, pp. 285–298 (1999)
Demaine, E.D.: Cache-oblivious algorithms and data structures. In: Lecture Notes from the EEF Summer School on Massive Data Sets. Lecture Notes in Computer Science, BRICS, University of Aarhus, Denmark (2002) (to appear)
Arge, L., Brodal, G.S., Fagerberg, R.: Cache-oblivious data structures. In: Mehta, D., Sahni, S. (eds.) Handbook of Data Structures and Applications, vol. 27, CRC Press, Boca Raton (2005)
Brodal, G.S., Fagerberg, R.: On the limits of cache-obliviousness. In: Proc. of the 35th ACM Symp. on Theory of Computing, pp. 307–315 (2003)
Bilardi, G., Peserico, E.: A characterization of temporal locality and its portability across memory hierarchies. In: Orejas, F., Spirakis, P.G., van Leeuwen, J. (eds.) ICALP 2001. LNCS, vol. 2076, pp. 128–139. Springer, Heidelberg (2001)
Aggarwal, A., Alpern, B., Chandra, A.K., Snir, M.: A model for hierarchical memory. In: Proc. of the 19th ACM Symp. on Theory of Computing, pp. 305–314 (1987)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Silvestri, F. (2007). On the Limits of Cache-Oblivious Matrix Transposition. In: Montanari, U., Sannella, D., Bruni, R. (eds) Trustworthy Global Computing. TGC 2006. Lecture Notes in Computer Science, vol 4661. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-75336-0_15
Download citation
DOI: https://doi.org/10.1007/978-3-540-75336-0_15
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-75333-9
Online ISBN: 978-3-540-75336-0
eBook Packages: Computer ScienceComputer Science (R0)