English
Related papers

Related papers: Cache-Oblivious Priority Queues with Decrease-Key …

200 papers

Motivated by privacy preservation for outsourced data, data-oblivious external memory is a computational framework where a client performs computations on data stored at a semi-trusted server in a way that does not reveal her data to the…

Data Structures and Algorithms · Computer Science 2014-09-03 Michael T. Goodrich , Joseph A. Simons

The binary heap of Williams (1964) is a simple priority queue characterized by only storing an array containing the elements and the number of elements $n$ - here denoted a strictly implicit priority queue. We introduce two new strictly…

Data Structures and Algorithms · Computer Science 2015-05-04 Gerth Stølting Brodal , Jesper Sindahl Nielsen , Jakob Truelsen

An external memory data structure is presented for maintaining a dynamic set of $N$ two-dimensional points under the insertion and deletion of points, and supporting 3-sided range reporting queries and top-$k$ queries, where top-$k$ queries…

Computational Geometry · Computer Science 2015-09-29 Gerth Stølting Brodal

The B-tree is a fundamental secondary index structure that is widely used for answering one-dimensional range reporting queries. Given a set of $N$ keys, a range query can be answered in $O(\log_B \nm + \frac{K}{B})$ I/Os, where $B$ is the…

Data Structures and Algorithms · Computer Science 2008-11-27 Ke Yi

We consider the classical problem of representing a collection of priority queues under the operations \Findmin{}, \Insert{}, \Decrease{}, \Meld{}, \Delete{}, and \Deletemin{}. In the comparison-based model, if the first four operations are…

Data Structures and Algorithms · Computer Science 2011-12-06 Amr Elmasry , Jyrki Katajainen

The future of main memory appears to lie in the direction of new technologies that provide strong capacity-to-performance ratios, but have write operations that are much more expensive than reads in terms of latency, bandwidth, and energy.…

Data Structures and Algorithms · Computer Science 2017-10-10 Naama Ben-David , Guy E. Blelloch , Jeremy T. Fineman , Phillip B. Gibbons , Yan Gu , Charles McGuffey , Julian Shun

Priority queues are data structures that maintain a dynamic collection of elements and allow inserting new elements and removing the smallest element. The most widely known and used priority queue is likely the implicit binary heap, even…

Data Structures and Algorithms · Computer Science 2026-04-29 Johannes Breitling , Ragnar Groot Koerkamp , Marvin Williams

We consider Oblivious Shuffling and K-Oblivious Shuffling, a refinement thereof. We provide efficient algorithms for both and discuss their application to the design of Oblivious RAM. The task of K-Oblivious Shuffling is to obliviously…

Cryptography and Security · Computer Science 2017-10-19 Sarvar Patel , Giuseppe Persiano , Kevin Yeo

Concurrent data structures often require additional memory for handling synchronization issues in addition to memory for storing elements. Depending on the amount of this additional memory, implementations can be more or less…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-01-17 Vitaly Aksenov , Nikita Koval , Petr Kuznetsov , Anton Paramonov

Priority queues are container data structures essential to many high performance computing (HPC) applications. In this paper, we introduce multiresolution priority queues, a data structure that improves the performance of the standard heap…

Data Structures and Algorithms · Computer Science 2017-08-11 Jordi Ros-Giralt , Alan Commike , Peter Cullen , Jeff Lucovsky , Dilip Madathil , Richard Lethin

Priority queues are used in a wide range of applications, including prioritized online scheduling, discrete event simulation, and greedy algorithms. In parallel settings, classical priority queues often become a severe bottleneck, resulting…

Data Structures and Algorithms · Computer Science 2025-04-17 Marvin Williams , Peter Sanders

Priority queues are abstract data structures which store a set of key/value pairs and allow efficient access to the item with the minimal (maximal) key. Such queues are an important element in various areas of computer science such as…

Data Structures and Algorithms · Computer Science 2015-09-24 Jakob Gruber

Priority queues with parallel access are an attractive data structure for applications like prioritized online scheduling, discrete event simulation, or greedy algorithms. However, a classical priority queue constitutes a severe bottleneck…

Data Structures and Algorithms · Computer Science 2021-07-23 Marvin Williams , Peter Sanders , Roman Dementiev

In [SPAA2007], Bender et al. define a streaming B-tree (or index) as one that supports updates in amortized $o(1)$ IOs, and present a structure achieving amortized $O((\log N)/B)$ IOs and queries in $O(\log N)$ IOs. We extend their result…

Data Structures and Algorithms · Computer Science 2017-07-27 Andrew Twigg

We extend the Faulty RAM model by Finocchi and Italiano (2008) by adding a safe memory of arbitrary size $S$, and we then derive tradeoffs between the performance of resilient algorithmic techniques and the size of the safe memory. Let…

Data Structures and Algorithms · Computer Science 2015-04-03 Lorenzo De Stefani , Francesco Silvestri

Hash tables are a ubiquitous class of dictionary data structures. However, standard hash table implementations do not translate well into the external memory model, because they do not incorporate locality for insertions. Iacono and…

Data Structures and Algorithms · Computer Science 2018-05-25 Alex Conway , Martin Farach-Colton , Philip Shilane

Mining large graphs for information is becoming an increasingly important workload due to the plethora of graph structured data becoming available. An aspect of graph algorithms that has hitherto not received much interest is the effect of…

Data Structures and Algorithms · Computer Science 2012-03-27 Amitabha Roy

Given string $S[1..N]$ and integer $k$, the {\em suffix selection} problem is to determine the $k$th lexicographically smallest amongst the suffixes $S[i... N]$, $1 \leq i \leq N$. We study the suffix selection problem in the cache-aware…

Data Structures and Algorithms · Computer Science 2009-02-11 Gianni Franceschini , Roberto Grossi , S. Muthukrishnan

Large language models (LLMs) with extended context windows enable powerful downstream applications but impose significant memory overhead, as caching all key-value (KV) states scales linearly with sequence length and batch size. Existing…

Computation and Language · Computer Science 2025-10-10 Yuzhe Gu , Xiyu Liang , Jiaojiao Zhao , Enmao Diao

In the multiple-selection problem one is given an unsorted array $S$ of $N$ elements and an array of $q$ query ranks $r_1<\cdots<r_q$, and the task is to return, in sorted order, the $q$ elements in $S$ of rank $r_1, \ldots, r_q$,…

Data Structures and Algorithms · Computer Science 2024-02-28 Gerth Stølting Brodal , Sebastian Wild