Abstract
We present cache-oblivious data structures based upon exponential structures. These data structures perform well on a hierarchical memory but do not depend on any parameters of the hierarchy, including the block sizes and number of blocks at each level. The problems we consider are searching, partial persistence and planar point location. On a hierarchical memory where data is transferred in blocks of size B, some of the results we achieve are:
-
-
We give a linear-space data structure for dynamic searching that supports searches and updates in optimal O(logB N) worst- case I/Os, eliminating amortization from the result of Bender, Demaine, and Farach-Colton (FOCS ’00). We also consider finger searches and updates and batched searches.
-
-
We support partially-persistent operations on an ordered set, namely, we allow searches in any previous version of the set and updates to the latest version of the set (an update creates a new version of the set). All operations take an optimal O(logB (m + N)) amortized I/Os, where N is the size of the version being searched/updated, and m is the number of versions.
-
-
We solve the planar point location problem in linear space, taking optimal O(logB N) I/Os for point location queries, where N is the number of line segments specifying the partition of the plane. The pre-processing requires O((N/B) logM/B N) I/Os, where M is the size of the ‘inner’ memory.
This work was supported in part by HRL Laboratories, NSF Grant EIA-0112849 and Sandia National Laboratories (Bender); in part by NSF grants CCR-9800085 and CCR-0105678 (Cole);and in part by EPSRC grant GR L/92150 and UISTRF project 2001.04/IT (Raman).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
A. Aggarwal and J. S. Vitter. The I/O complexity of sorting and related problems. Communications of the ACM 31, 1116–1127, 1988.
A. Ailamaki, D. J. DeWitt, M. D. Hill, and D. A. Wood. DBMSs on a Modern Processor: Where Does Time Go? In Proc. 25th VLDB Conference (1999), pp 266–277.
A. Andersson. Faster Deterministic Sorting and Searching in Linear Space. In Proc. 37th IEEE FOCS (1996), pp. 135–141.
A. Andersson and M. Thorup. Tight(er) worst-case bounds on dynamic searching and priority queues. In Proc. 31st ACM STOC (2000), pp. 335–342.
L. Arge. External memory data structures. In J. Abello, P. M. Pardalos, and M. G. C. Resende, eds, Handbook of Massive Data Sets. Kluwer Academic, 2002.
L. Arge, D. E. Vengroff and J. S. Vitter. External-Memory Algorithms for Processing Line Segments in Geographic Information Systems (Extended Abstract). In Proc. 6th European Symposium on Algorithms (1995), LNCS 979, 295–310.
R. Bayer and E. M. McCreight. Organization and maintenance of large ordered indexes. Acta Informatica, 1(3): 173–189, February 1972.
M. A. Bender, E. Demaine and M. Farach-Colton Cache-oblivous B-trees. In Proc. 41st IEEE FOCS (2000), pp. 399–409.
M. A. Bender, R. Cole and R. Raman. Exponential structures for efficient cache-oblivious algorithms. University of Leicester TR 2002/19, 2002.
M. A. Bender, Z. Duan, J. Iacono and J. Wu. A locality-preserving cache-oblivious dynamic dictionary. In Proc. 13th ACM-SIAM SODA (2002), pp. 29–38.
R. D. Blumofe, M. Frigo, C. F. Joerg, C. E. Leiserson, and K. H. Randall. An analysis of dag-consistent distributed shared-memory algorithms. In Proc. 8th ACM SPAA, pp. 297–308, 1996.
G. S. Brodal, R. Fagerberg and R. Jacob. Cache-oblivious search trees via binary trees of small height. In Proc. 13th ACM-SIAM SODA (2002), pp. 39–48.
M. R. Brown, R. E. Tarjan. A data structure for representing sorted lists. SIAM J. Comput. 9 (1980), pp. 594–614.
M. T. Goodrich, J-J. Tsay, D. E. Vengroff and J. S. Vitter. External-Memory Computational Geometry (Preliminary Version). In Proc. 34th IEEE FOCS (1993), pp. 714–723.
M. L. Fredman and D. E. Willard. Surpassing the information theoretic bound with fusion trees. J. Comput. System Set, 47(3):424–436, 1993.
M. Frigo, C. E. Leiserson, H. Prokop and S. Ramachandran Cache-oblivious algorithms. In Proc. 40th IEEE FOCS (1999), pp. 285–298.
K. Mehlhorn. Data structures and algorithms, 1. Sorting and searching. Springer, 1984.
H. Prokop. Cache-oblivious algorithms. MS Thesis, MIT, 1999.
N. Rahman and R. Raman. Adapting radix sort to the memory hierarchy. TR 00-02, King’s College London, 2000. Prel. vers. in Proc. ALENEX 2000. 20. N. Rahman, R. Cole and R. Raman. Optimised predecessor data structures for internal memory. In Proc. 5th Workshop on Algorithm Engg., LNCS 2141, pp. 67–78, 2001.
N. Sarnak and R. E. Tarjan. Planar point location using persistent search trees. Communications of the ACM 29, 1986, 669–679.
M. Thorup. Faster Deterministic Sorting and Priority Queues in Linear Space. Proc. 9th ACM-SIAM SODA (1998), pp. 550–555.
S. Toledo. Locality of reference in LU decomposition with partial pivoting. SIAM Journal on Matrix Analysis and Applications, 18(4): 1065–1081, Oct. 1997.
J. S. Vitter. External memory algorithms and data structures: Dealing with MASSIVE data. ACM Computing Surveys 33 (2001) pp. 209–271.
D. E. Willard. A density control algorithm for doing insertions and deletions in a sequentially ordered file in good worst-case time. Information and Computation, 97(2): 150–204, 1992.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bender, M.A., Cole, R., Raman, R. (2002). Exponential Structures for Efficient Cache-Oblivious Algorithms. In: Widmayer, P., Eidenbenz, S., Triguero, F., Morales, R., Conejo, R., Hennessy, M. (eds) Automata, Languages and Programming. ICALP 2002. Lecture Notes in Computer Science, vol 2380. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45465-9_18
Download citation
DOI: https://doi.org/10.1007/3-540-45465-9_18
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-43864-9
Online ISBN: 978-3-540-45465-6
eBook Packages: Springer Book Archive