Journal ArticleDOI
A locality-preserving cache-oblivious dynamic dictionary
Reads0
Chats0
TLDR
The data structure presented here is a simplification of the cache-oblivious B-tree of Bender, Demaine, and Farach-Colton and has memory performance optimized for all levels of the memory hierarchy even though it has no memory-hierarchy-specific parameterization.About:
This article is published in Journal of Algorithms.The article was published on 2004-11-01. It has received 93 citations till now. The article focuses on the topics: Data structure & Memory hierarchy.read more
Citations
More filters
Proceedings ArticleDOI
Cache-oblivious streaming B-trees
Michael A. Bender,Martin Farach-Colton,Jeremy T. Fineman,Yonatan R. Fogel,Bradley C. Kuszmaul,Jelani Nelson +5 more
TL;DR: A cache-aware version of the COLA, the lookahead array, which achieves the same bounds as Brodal and Fagerberg's (cache-aware) Bε-tree.
Proceedings ArticleDOI
Cache oblivious search trees via binary trees of small height
TL;DR: A version of cache oblivious search trees which is simpler than the previous proposal of Bender, Demaine and Farach-Colton and has the same complexity bounds is proposed, and can be implemented as just a single array of data elements without the use of pointers.
Patent
High-Performance Streaming Dictionary
Michael A. Bender,Martin Farach-Colton,Yonatan R. Fogel,Zardosht Kasheff,Bradley C. Kuszmaul,Vincenzo Liberatore,Barry Perlman,Richard F. Prohaska,David S. Wells +8 more
TL;DR: In this article, a high-performance dictionary data structure is defined for storing data in a disk storage system, which supports full transactional semantics, concurrent access from multiple transactions, and logging and recovery.
A New Data Structure for Representing Sorted Lists
Kurt Mehlhorn,Hartmut Noltemeier +1 more
TL;DR: In this article, the worst case cost of sequences of insertions and deletions in weak B-trees is analyzed, where each node has at least a and at most b sons where 2a ≤ b.
Proceedings ArticleDOI
Monotone minimal perfect hashing: searching a sorted table with O(1) accesses
TL;DR: This work considers the problem of monotone minimal perfect hashing, in which the bijection is required to preserve the lexicographical ordering of the keys, and shows how to compute the predecessor (in the sorted order of S) of an arbitrary element, using O(1) accesses in expectation and an index of O(n log w) bits.
References
More filters
Journal Article
Efficient tree layout in a multilevel memory hierarchy
TL;DR: In this paper, the problem of minimizing the expected number of block transfers performed during a search operation, subject to a given probability distribution on the leaves, was considered and a simple greedy algorithm that is within an additive constant strictly less than 1 of optimal was proposed.
Proceedings ArticleDOI
A locality-preserving cache-oblivious dynamic dictionary
TL;DR: In this article, a simple dictionary structure designed for a hierarchical memory is presented, which supports search operations using O(logBN + log2N/B) amortized block transfers.
Book ChapterDOI
Optimised Predecessor Data Structures for Internal Memory
TL;DR: Preliminary experimental results are given which demonstrate that data structures based on these ideas outperform data structures which are based on minimising cache misses alone, namely B-tree variants.
Proceedings ArticleDOI
The cost of cache-oblivious searching
Michael A. Bender,Gerth Stølting Brodal,Rolf Fagerberg,Dongdong Ge,Simai He,Haodong Hu,John Iacono,Alejandro López-Ortiz +7 more
TL;DR: It is shown that for a multilevel memory hierarchy, a simple cache-oblivious structure almost replicates the performance of an optimal parameterized k-level DAM structure, and it is demonstrated that as k grows, the search costs of the optimal k- level DAM search structure and the optimal cache-OBlivious search structure rapidly converge.
Book ChapterDOI
Optimal worst-case operations for implicit cache-oblivious search trees
TL;DR: An open issue on dictionaries dating back to the sixthies is closed, showing that bounds can be simultaneously achieved in the worst case for searching and updating by suitably maintaining a permutation of the n keys in the array.