Cache-oblivious dynamic dictionaries with update/query tradeoffs

Several existing cache-oblivious dynamic dictionaries achieve O(logB N) (or slightly better O(logB N over M )) memory transfers per operation, where N is the number of items stored, M is the memory size, and B is the block size, which matches the classic B-tree data structure. One recent struc...

Full description

Bibliographic Details
Main Authors: Brodal, Gerth Stolting, Demaine, Erik D., Fineman, Jeremy T., Iacono, John, Langerman, Stefan, Munro, J. Ian
Other Authors: Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Format: Article
Language:en_US
Published: Society for Industrial and Applied Mathematics 2011
Online Access:http://hdl.handle.net/1721.1/62807
https://orcid.org/0000-0003-3803-5703
_version_ 1811083645994139648
author Brodal, Gerth Stolting
Demaine, Erik D.
Fineman, Jeremy T.
Iacono, John
Langerman, Stefan
Munro, J. Ian
author2 Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
author_facet Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Brodal, Gerth Stolting
Demaine, Erik D.
Fineman, Jeremy T.
Iacono, John
Langerman, Stefan
Munro, J. Ian
author_sort Brodal, Gerth Stolting
collection MIT
description Several existing cache-oblivious dynamic dictionaries achieve O(logB N) (or slightly better O(logB N over M )) memory transfers per operation, where N is the number of items stored, M is the memory size, and B is the block size, which matches the classic B-tree data structure. One recent structure achieves the same query bound and a sometimes-better amortized update bound of O (...) memory transfers. This paper presents a new data structure, the xDict, implementing predecessor queries in O(...)worstcase memory transfers and insertions and deletions in O (...) amortized memory transfers, for any constant " with 0 < epsilon < 1. For example, the xDict achieves subconstant amortized update cost when N = ..., whereas the B-tree’s ... is subconstant only when ... is subconstant only when N = .... The xDict attains the optimal tradeoff between insertions and queries, even in the broader external-memory model, for the range where inserts cost between (...) and O(1= lg3 N) memory transfers.
first_indexed 2024-09-23T12:36:29Z
format Article
id mit-1721.1/62807
institution Massachusetts Institute of Technology
language en_US
last_indexed 2024-09-23T12:36:29Z
publishDate 2011
publisher Society for Industrial and Applied Mathematics
record_format dspace
spelling mit-1721.1/628072022-10-01T10:03:48Z Cache-oblivious dynamic dictionaries with update/query tradeoffs Brodal, Gerth Stolting Demaine, Erik D. Fineman, Jeremy T. Iacono, John Langerman, Stefan Munro, J. Ian Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science Demaine, Erik D. Demaine, Erik D. Fineman, Jeremy T. Several existing cache-oblivious dynamic dictionaries achieve O(logB N) (or slightly better O(logB N over M )) memory transfers per operation, where N is the number of items stored, M is the memory size, and B is the block size, which matches the classic B-tree data structure. One recent structure achieves the same query bound and a sometimes-better amortized update bound of O (...) memory transfers. This paper presents a new data structure, the xDict, implementing predecessor queries in O(...)worstcase memory transfers and insertions and deletions in O (...) amortized memory transfers, for any constant " with 0 < epsilon < 1. For example, the xDict achieves subconstant amortized update cost when N = ..., whereas the B-tree’s ... is subconstant only when ... is subconstant only when N = .... The xDict attains the optimal tradeoff between insertions and queries, even in the broader external-memory model, for the range where inserts cost between (...) and O(1= lg3 N) memory transfers. Danish National Research Foundation (MADALGO (Center for Massive Data Algorithmics)) National Science Foundation (U.S.) (NSF Grants CCF-0541209) National Science Foundation (U.S.) (NSF Grants CCF-0541209) Computing Innovation Fellows 2011-05-10T19:22:51Z 2011-05-10T19:22:51Z 2010-01 Article http://purl.org/eprint/type/ConferencePaper http://hdl.handle.net/1721.1/62807 Brodal, Gerth Stolting et al. "Cache-Oblivious Dynamic Dictionaries with Update/Query Tradeoffs." Proceedings of the Twenty-First Annual ACM-SIAM Symposium on Discrete Algorithms, Jan, 17-19, 2010, Hyatt Regency Austin, Austin, TX. Session 11C. https://orcid.org/0000-0003-3803-5703 en_US http://www.siam.org/proceedings/soda/2010/SODA10_117_brodalg.pdf Proceedings of the Twenty-First Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2010 Creative Commons Attribution-Noncommercial-Share Alike 3.0 http://creativecommons.org/licenses/by-nc-sa/3.0/ application/pdf Society for Industrial and Applied Mathematics MIT web domain
spellingShingle Brodal, Gerth Stolting
Demaine, Erik D.
Fineman, Jeremy T.
Iacono, John
Langerman, Stefan
Munro, J. Ian
Cache-oblivious dynamic dictionaries with update/query tradeoffs
title Cache-oblivious dynamic dictionaries with update/query tradeoffs
title_full Cache-oblivious dynamic dictionaries with update/query tradeoffs
title_fullStr Cache-oblivious dynamic dictionaries with update/query tradeoffs
title_full_unstemmed Cache-oblivious dynamic dictionaries with update/query tradeoffs
title_short Cache-oblivious dynamic dictionaries with update/query tradeoffs
title_sort cache oblivious dynamic dictionaries with update query tradeoffs
url http://hdl.handle.net/1721.1/62807
https://orcid.org/0000-0003-3803-5703
work_keys_str_mv AT brodalgerthstolting cacheobliviousdynamicdictionarieswithupdatequerytradeoffs
AT demaineerikd cacheobliviousdynamicdictionarieswithupdatequerytradeoffs
AT finemanjeremyt cacheobliviousdynamicdictionarieswithupdatequerytradeoffs
AT iaconojohn cacheobliviousdynamicdictionarieswithupdatequerytradeoffs
AT langermanstefan cacheobliviousdynamicdictionarieswithupdatequerytradeoffs
AT munrojian cacheobliviousdynamicdictionarieswithupdatequerytradeoffs