skip to main content
10.1145/780542.780589acmconferencesArticle/Chapter ViewAbstractPublication PagesstocConference Proceedingsconference-collections
Article

On the limits of cache-obliviousness

Published:09 June 2003Publication History

ABSTRACT

In this paper, we present lower bounds for permuting and sorting in the cache-oblivious model. We prove that (1) I/O optimal cache-oblivious comparison based sorting is not possible without a tall cache assumption, and (2) there does not exist an I/O optimal cache-oblivious algorithm for permuting, not even in the presence of a tall cache assumption.Our results for sorting show the existence of an inherent trade-off in the cache-oblivious model between the strength of the tall cache assumption and the overhead for the case M » B, and show that Funnelsort and recursive binary mergesort are optimal algorithms in the sense that they attain this trade-off.

References

  1. P. Agarwal, L. Arge, A. Danner, and B. Holland-Minkley. On cache-oblivious multidimensional range searching. In Proc. 19th ACM Symposium on Computational Geometry, 2003. To appear.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. A. Aggarwal and J. S. Vitter. The input/output complexity of sorting and related problems. Communications of the ACM, 31(9):1116--1127, Sept. 1988.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. L. Arge. External memory data structures. In Proc. 9th Annual European Symposium on Algorithms (ESA), volume 2161 of LNCS, pages 1--29. Springer, 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. L. Arge, M. A. Bender, E. D. Demaine, B. Holland-Minkley, and J. I. Munro. Cache-oblivious priority queue and graph algorithm applications. In Proc. 34th Ann. ACM Symp. on Theory of Computing, pages 268--276. ACM Press, 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. L. Arge, M. Knudsen, and K. Larsen. A general lower bound on the I/O-complexity of comparison-based algorithms. In F. K. H. A. Dehne, J.-R. Sack, N. Santoro, and S. Whitesides, editors, Algorithms and Data Structures, Third Workshop, volume 709 of LNCS, pages 83--94, Montreal, Canada, 11--13 Aug. 1993. Springer.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. S. Baase and A. V. Gelder. Computer Algorithms, Introduction to Design and Analysis. Addison-Wesley, 3rd edition, 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. R. Bayer and E. McCreight. Organization and maintenance of large ordered indexes. Acta Informatica, 1:173--189, 1972.]]Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. M. Bender, R. Cole, E. Demaine, and M. Farach-Colton. Scanning and traversing: Maintaining data for traversals in a memory hierarchy. In Proc. 10th Annual European Symposium on Algorithms (ESA), volume 2461 of LNCS, pages 139--151. Springer, 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. M. Bender, R. Cole, and R. Raman. Exponential structures for cache-oblivious algorithms. In Proc. 29th International Colloquium on Automata, Languages, and Programming (ICALP), volume 2380 of LNCS, pages 195--207. Springer, 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. M. Bender, E. Demaine, and M. Farach-Colton. Efficient tree layout in a multilevel memory hierarchy. In Proc. 10th Annual European Symposium on Algorithms (ESA), volume 2461 of LNCS, pages 165--173. Springer, 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. M. A. Bender, E. Demaine, and M. Farach-Colton. Cache-oblivious B-trees. In Proc. 41st Ann. Symp. on Foundations of Computer Science, pages 399--409. IEEE Computer Society Press, 2000.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. M. A. Bender, E. Demaine, and M. Farach-Colton. Cache-oblivious B-trees. In Proc. 41st Ann. Symp. on Foundations of Computer Science, pages 399--409. IEEE Computer Society Press, 2000.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. G. Bilardi and E. Peserico. A characterization of temporal locality and its portability across memory hierarchies. In ICALP: Annual International Colloquium on Automata, Languages and Programming, volume 2076, pages 128--139. Springer, 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. G. S. Brodal and R. Fagerberg. Cache oblivious distribution sweeping. In Proc. 29th International Colloquium on Automata, Languages, and Programming (ICALP), volume 2380 of LNCS, pages 426--438. Springer, 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. G. S. Brodal and R. Fagerberg. Funnel heap - a cache oblivious priority queue. In Proc. 13th Annual International Symposium on Algorithms and Computation, volume 2518 of LNCS, pages 219--228. Springer, 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. G. S. Brodal, R. Fagerberg, and R. Jacob. Cache oblivious search trees via binary trees of small height. In Proc. 13th Ann. ACM-SIAM Symp. on Discrete Algorithms, pages 39--48, 2002.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. M. R. Brown and R. E. Tarjan. A fast merging algorithm. Journal of the ACM, 26(2):211--226, 1979.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. M. Frigo, C. E. Leiserson, H. Prokop, and S. Ramachandran. Cache-oblivious algorithms. In 40th Annual Symposium on Foundations of Computer Science, pages 285--297. IEEE Computer Society Press, 1999.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. S. Huddleston and K. Mehlhorn. A new data structure for representing sorted lists. Acta Informatica, 17:157--184, 1982.]]Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. F. K. Hwang and S. Lin. A simple algorithm for merging two disjoint linearly ordered sets. SIAM Journal of Computing, 1(1):31--39, 1972.]]Google ScholarGoogle ScholarCross RefCross Ref
  21. H. Prokop. Cache-oblivious algorithms. Master's thesis, Massachusetts Institute of Technology, June 1999.]]Google ScholarGoogle Scholar
  22. N. Rahman, R. Cole, and R. Raman. Optimised predecessor data structures for internal memory. In Proc. 5th Int. Workshop on Algorithm Engineering (WAE), volume 2141, pages 67--78. Springer, 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. D. D. Sleator and R. E. Tarjan. Amortized Efficiency of List Update and Paging Rules. Communications of the ACM, 28:202--208, 1985.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. J. S. Vitter. External memory algorithms and data structures: Dealing with massive data. ACM Computing Surveys, 33(2):209--271, June 2001.]] Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. On the limits of cache-obliviousness

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      STOC '03: Proceedings of the thirty-fifth annual ACM symposium on Theory of computing
      June 2003
      740 pages
      ISBN:1581136749
      DOI:10.1145/780542

      Copyright © 2003 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 9 June 2003

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • Article

      Acceptance Rates

      STOC '03 Paper Acceptance Rate80of270submissions,30%Overall Acceptance Rate1,469of4,586submissions,32%

      Upcoming Conference

      STOC '24
      56th Annual ACM Symposium on Theory of Computing (STOC 2024)
      June 24 - 28, 2024
      Vancouver , BC , Canada

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader