Paper by Erik D. Demaine
- Michael A. Bender, Erik D. Demaine, and Martin Farach-Colton, “Cache-Oblivious B-Trees”, in Proceedings of the 41st Annual Symposium on Foundations of Computer Science (FOCS 2000), Redondo Beach, California, November 12–14, 2000, pages 399–409.
We present dynamic search-tree data structures that perform well in the setting
of a hierarchical memory (including various levels of cache, disk, etc.), but
do not depend on the number of memory levels, the block sizes and number of
blocks at each level, or the relative speeds of memory access. In particular,
between any pair of levels in the memory hierarchy, where transfers between the
levels are done in blocks of size B, our data structures match the
optimal search bound of Θ(logB N) memory
transfers. This bound is also achieved by the classic B-tree data structure,
but only when the block size B is known, which in practice requires
careful tuning on each machine platform. One of our data structures supports
insertions and deletions in Θ(logB N)
mortized memory transfers, which matches the B-tree's worst-case bounds. We
augment this structure to support scans optimally in Θ(N/B)
memory transfers. In this second data structure insertions and deletions
require Θ(logB N +
(log2 N)/B) amortized memory transfers.
Thus, we match the performance of the B-tree for
B = Ω(log N log log N).
- The paper is 11 pages.
- The paper is available in PostScript (197k), gzipped PostScript (67k), and PDF (186k).
- See information on file formats.
- [Google Scholar search]
- Related papers:
- CacheObliviousBTrees_SICOMP (Cache-Oblivious B-Trees)
See also other papers by Erik Demaine.
These pages are generated automagically from a
Last updated January 18, 2021 by