scispace - formally typeset
Search or ask a question

Showing papers by "Gerth Stølting Brodal published in 2010"


Journal ArticleDOI
TL;DR: If A is stored in column major layout, it is proved that SpMV has I/O complexity $\Theta(\min\{\frac{kN}{B}\max\{1,\log_{M/B}\frac{N}{M}\},kN\}})$ for k≤N/2.
Abstract: We study the problem of sparse-matrix dense-vector multiplication (SpMV) in external memory. The task of SpMV is to compute y:=Ax, where A is a sparse N×N matrix and x is a vector. We express sparsity by a parameter k, and for each choice of k consider the class of matrices where the number of nonzero entries is kN, i.e., where the average number of nonzero entries per column is k. We investigate what is the external worst-case complexity, i.e., the best possible upper bound on the number of I/Os, as a function of k, N and the parameters M (memory size) and B (track size) of the I/O-model. We determine this complexity up to a constant factor for all meaningful choices of these parameters, as long as k≤N 1−e , where e depends on the problem variant. Our model of computation for the lower bound is a combination of the I/O-models of Aggarwal and Vitter, and of Hong and Kung. We study variants of the problem, differing in the memory layout of A. If A is stored in column major layout, we prove that SpMV has I/O complexity $\Theta(\min\{\frac{kN}{B}\max\{1,\log_{M/B}\frac{N}{\max\{k,M\}}\},\,kN\})$for k≤N 1−e and any constant 0

60 citations


Proceedings ArticleDOI
17 Jan 2010
TL;DR: The xDict attains the optimal tradeoff between insertions and queries, even in the broader external-memory model, for the range where inserts cost between ε with 0 < ε < 1.
Abstract: Several existing cache-oblivious dynamic dictionaries achieve O(logBN) (or slightly better O(logBN/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(1/BΘ(1/log log B)2) logBN + 1/B log2N) memory trans-fers. This paper presents a new data structure, the xDict, implementing predecessor queries in O(1/e log BN/M) worst-case memory transfers and insertions and deletions in O(1/eB1-e logBN/M) amortized memory transfers, for any constant e with 0

34 citations


Book ChapterDOI
06 Sep 2010
TL;DR: This paper studies the trade-off between the space and query time of the two dimensional range minimum query problem, and shows that every algorithm enabled to access A during the query and using O(N/c) bits additional space requires Ω(c) query time, for any c where 1 ≤ c ≤ N.
Abstract: The two dimensional range minimum query problem is to preprocess a static two dimensional m by n array A of size N = m ċ n, such that subsequent queries, asking for the position of the minimum element in a rectangular range within A, can be answered efficiently. We study the trade-off between the space and query time of the problem. We show that every algorithm enabled to access A during the query and using O(N/c) bits additional space requires Ω(c) query time, for any c where 1 ≤ c ≤ N. This lower bound holds for any dimension. In particular, for the one dimensional version of the problem, the lower bound is tight up to a constant factor. In two dimensions, we complement the lower bound with an indexing data structure of size O(N/c) bits additional space which can be preprocessed in O(N) time and achieves O(c log2 c) query time. For c = O(1), this is the first O(1) query time algorithm using optimal O(N) bits additional space. For the case where queries can not probe A, we give a data structure of size O(N ċ min{m, log n}) bits with O(1) query time, assuming m ≤ n. This leaves a gap to the lower bound of Ω(N log m) bits for this version of the problem.

13 citations


Book ChapterDOI
15 Dec 2010
TL;DR: The D 2-tree compares favourably to other overlays for the following reasons: it provides matching and better complexities, and the management of nodes and elements are completely decoupled from each other.
Abstract: We present a new overlay, called the Deterministic Decentralized tree (D 2-tree). The D 2-tree compares favourably to other overlays for the following reasons: (a) it provides matching and better complexities, which are deterministic for the supported operations; (b) the management of nodes (peers) and elements are completely decoupled from each other; and (c) an efficient deterministic load-balancing mechanism is presented for the uniform distribution of elements into nodes, while at the same time probabilistic optimal bounds are provided for the congestion of operations at the nodes.

7 citations


Book ChapterDOI
15 Dec 2010
TL;DR: An implicit dictionary with the working set property i.e. a dictionary supporting insert(e), delete(x) and predecessor(x), in time and l, where n is the number of elements stored in the dictionary and l is thenumber of distinct elements searched for since the element with key x was last searched for.
Abstract: In this paper we present an implicit dictionary with the working set property i.e. a dictionary supporting insert(e), delete(x) and predecessor(x) in \({\mathcal O}(\log n)\) time and search(x) in \({\mathcal O}(\log\ell)\) time, where n is the number of elements stored in the dictionary and l is the number of distinct elements searched for since the element with key x was last searched for. The dictionary stores the elements in an array of size n using no additional space. In the cache-oblivious model the operations insert(e), delete(x) and predecessor(x) cause \({\mathcal O}(\log_B n)\) cache-misses and search(x) causes \({\mathcal O}(\log_B \ell)\) cache-misses.

4 citations


Posted Content
TL;DR: In this article, the authors present a new overlay, called the deterministic decentralized tree (D^2$-tree), which provides matching and better complexities, which are deterministic for the supported operations; the management of nodes (peers) and elements are completely decoupled from each other.
Abstract: We present a new overlay, called the {\em Deterministic Decentralized tree} ($D^2$-tree). The $D^2$-tree compares favourably to other overlays for the following reasons: (a) it provides matching and better complexities, which are deterministic for the supported operations; (b) the management of nodes (peers) and elements are completely decoupled from each other; and (c) an efficient deterministic load-balancing mechanism is presented for the uniform distribution of elements into nodes, while at the same time probabilistic optimal bounds are provided for the congestion of operations at the nodes. The load-balancing scheme of elements into nodes is deterministic and general enough to be applied to other hierarchical tree-based overlays. This load-balancing mechanism is based on an innovative lazy weight-balancing mechanism, which is interesting in its own right.