31,284 research outputs found
A Unified approach to concurrent and parallel algorithms on balanced data structures
Concurrent and parallel algorithms are different. However, in the case of dictionaries, both kinds of algorithms share many
common points. We present a unified approach emphasizing these points. It is based on a careful analysis of the sequential
algorithm, extracting from it the more basic facts, encapsulated later on as local rules. We apply the method to the
insertion algorithms in AVL trees. All the concurrent and parallel insertion algorithms have two main phases. A
percolation phase, moving the keys to be inserted down, and a rebalancing phase. Finally, some other algorithms and
balanced structures are discussed.Postprint (published version
Concurrent rebalancing on hyperred-black trees
The HyperRed-Black trees are a relaxed version of Red-Black
trees accepting high degree of concurrency. In the Red-Black trees
consecutive red nodes are forbidden. This restriction has been
withdrawn in the Chromatic trees. They have been introduced by
O.~Nurmi and E.~Soisalon-Soininen to work in a concurrent
environment. A Chromatic tree can have big clusters of red nodes
surrounded by black nodes. Nevertheless, concurrent rebalancing of
Chromatic trees into Red-Black trees has a serious drawback:
in big cluster of red nodes only the top node can be updated. Direct
updating inside the cluster is forbidden. This approach gives us
limited degree of concurrency. The HyperRed-Black trees has been
designed to solve this problem. It is possible to update red nodes in
the inside of a red cluster. In a HyperRed-Black tree nodes can
have a multiplicity of colors; they can be red, black or hyper-red.Postprint (published version
A note on the largest number of red nodes in red-black trees
In this paper, we are interested in the number of red nodes in red-black
trees. We first present an time dynamic programming solution for
computing , the largest number of red internal nodes in a red-black tree
on keys. Then the algorithm is improved to some time recursive
and nonrecursive algorithms. Based on these improved algorithms we finally find
a closed-form solution of
DeltaTree: A Practical Locality-aware Concurrent Search Tree
As other fundamental programming abstractions in energy-efficient computing,
search trees are expected to support both high parallelism and data locality.
However, existing highly-concurrent search trees such as red-black trees and
AVL trees do not consider data locality while existing locality-aware search
trees such as those based on the van Emde Boas layout (vEB-based trees), poorly
support concurrent (update) operations.
This paper presents DeltaTree, a practical locality-aware concurrent search
tree that combines both locality-optimisation techniques from vEB-based trees
and concurrency-optimisation techniques from non-blocking highly-concurrent
search trees. DeltaTree is a -ary leaf-oriented tree of DeltaNodes in which
each DeltaNode is a size-fixed tree-container with the van Emde Boas layout.
The expected memory transfer costs of DeltaTree's Search, Insert, and Delete
operations are , where are the tree size and the unknown
memory block size in the ideal cache model, respectively. DeltaTree's Search
operation is wait-free, providing prioritised lanes for Search operations, the
dominant operation in search trees. Its Insert and {\em Delete} operations are
non-blocking to other Search, Insert, and Delete operations, but they may be
occasionally blocked by maintenance operations that are sometimes triggered to
keep DeltaTree in good shape. Our experimental evaluation using the latest
implementation of AVL, red-black, and speculation friendly trees from the
Synchrobench benchmark has shown that DeltaTree is up to 5 times faster than
all of the three concurrent search trees for searching operations and up to 1.6
times faster for update operations when the update contention is not too high
Lagrangian Relaxation and Partial Cover
Lagrangian relaxation has been used extensively in the design of
approximation algorithms. This paper studies its strengths and limitations when
applied to Partial Cover.Comment: 20 pages, extended abstract appeared in STACS 200
- …