Cache-Oblivious Priority Queues with Decrease-Key and Applications to Graph Algorithms

preprint2020arXivOpen access

Abstract

We present priority queues in the cache-oblivious external memory model with block size BB and main memory size MM that support on NN elements, operation \textsc{UPDATE} (combination of \textsc{INSERT} and \textsc{DECREASEKEY}) in O(1Blog⁡λBNB)O \left(\frac{1}{B}\log_{\fracλ{B}} \frac{N}{B}\right) amortized I/Os and operations \textsc{EXTRACT-MIN} and \textsc{DELETE} in O(⌈λεBlog⁡λBNB⌉log⁡λBNB)O \left(\lceil \frac{λ^{\varepsilon}}{B} \log_{\fracλ{B}} \frac{N}{B} \rceil \log_{\fracλ{B}} \frac{N}{B}\right) amortized I/Os, using O(NBlog⁡λBNB)O \left(\frac{N}{B}\log_{\fracλ{B}} \frac{N}{B}\right) blocks, for a user-defined parameter λ∈[2,N]λ\in [2, N ] and any real ε∈(0,1)\varepsilon \in (0,1). Our result improves upon previous I/O-efficient cache-oblivious and cache-aware priority queues [Chowdhury and Ramachandran, TALG 2018], [Brodal et al., SWAT 2004], [Kumar and Schwabe, SPDP 1996], [Arge et al., SICOMP 2007], [Fadel et al., TCS 1999]. We also present buffered repository trees that support on a multi-set of NN elements, operation \textsc{INSERT} in O(1Blog⁡λBNB)O \left(\frac{1}{B}\log_{\fracλ{B}} \frac{N}{B}\right) I/Os and operation \textsc{EXTRACT} on KK extracted elements in O(λεBlog⁡λBNB+KB)O \left(\frac{λ^{\varepsilon}}{B} \log_{\fracλ{B}} \frac{N}{B} + \frac{K}{B}\right) amortized I/Os, using O(NB)O \left(\frac{N}{B}\right) blocks, improving previous cache-aware and cache-oblivious results [Arge et al., SICOMP '07], [Buchsbaum et al., SODA '00]. In the cache-oblivious model, for λ=O(E/V)λ= O \left(E/V\right), we achieve O(EBlog⁡EVBEB)O \left(\frac{E}{B}\log_{\frac{E}{V B}} \frac{E}{B}\right) I/Os for single-source shortest paths, depth-first search and breadth-first search algorithms on massive directed dense graphs (V,E)(V,E). Our algorithms are I/O-optimal for E/V=Ω(M)E/V = Ω(M) (and in the cache-aware setting for λ=O(M)λ= O(M)).

Explore this paper’s authors, topics and related work.

Building this map preview

BZPEER is loading the nearby papers, people, topics and institutions for this page.

Reviews 0

Write a reviewWrite

No reviews yet.

Discussion 0

Add a commentWrite

No comments yet.