1,836 research outputs found
Locally Self-Adjusting Skip Graphs
We present a distributed self-adjusting algorithm for skip graphs that
minimizes the average routing costs between arbitrary communication pairs by
performing topological adaptation to the communication pattern. Our algorithm
is fully decentralized, conforms to the model (i.e. uses
bit messages), and requires bits of memory for each
node, where is the total number of nodes. Upon each communication request,
our algorithm first establishes communication by using the standard skip graph
routing, and then locally and partially reconstructs the skip graph topology to
perform topological adaptation. We propose a computational model for such
algorithms, as well as a yardstick (working set property) to evaluate them. Our
working set property can also be used to evaluate self-adjusting algorithms for
other graph classes where multiple tree-like subgraphs overlap (e.g. hypercube
networks). We derive a lower bound of the amortized routing cost for any
algorithm that follows our model and serves an unknown sequence of
communication requests. We show that the routing cost of our algorithm is at
most a constant factor more than the amortized routing cost of any algorithm
conforming to our computational model. We also show that the expected
transformation cost for our algorithm is at most a logarithmic factor more than
the amortized routing cost of any algorithm conforming to our computational
model
Brief Announcement: On Self-Adjusting Skip List Networks
This paper explores the design of dynamic network topologies which adjust to the workload they serve, in an online manner. Such self-adjusting networks (SANs) are enabled by emerging optical technologies, and can be found, e.g., in datacenters. SANs can be used to reduce routing costs by moving frequently communicating nodes topologically closer. This paper presents SANs which provide, for the first time, provable working set guarantees: the routing cost between node pairs is proportional to how recently these nodes communicated last time. Our SANs rely on skip lists (which serve as the topology) and provide additional interesting properties such as local routing
Top-Down Skiplists
We describe todolists (top-down skiplists), a variant of skiplists (Pugh
1990) that can execute searches using at most
binary comparisons per search and that have amortized update time
. A variant of todolists, called working-todolists,
can execute a search for any element using binary comparisons and have amortized search time
. Here, is the "working-set number" of
. No previous data structure is known to achieve a bound better than
comparisons. We show through experiments that, if implemented
carefully, todolists are comparable to other common dictionary implementations
in terms of insertion times and outperform them in terms of search times.Comment: 18 pages, 5 figure
The Fresh-Finger Property
The unified property roughly states that searching for an element is fast
when the current access is close to a recent access. Here, "close" refers to
rank distance measured among all elements stored by the dictionary. We show
that distance need not be measured this way: in fact, it is only necessary to
consider a small working-set of elements to measure this rank distance. This
results in a data structure with access time that is an improvement upon those
offered by the unified property for many query sequences
A Static Optimality Transformation with Applications to Planar Point Location
Over the last decade, there have been several data structures that, given a
planar subdivision and a probability distribution over the plane, provide a way
for answering point location queries that is fine-tuned for the distribution.
All these methods suffer from the requirement that the query distribution must
be known in advance.
We present a new data structure for point location queries in planar
triangulations. Our structure is asymptotically as fast as the optimal
structures, but it requires no prior information about the queries. This is a
2D analogue of the jump from Knuth's optimum binary search trees (discovered in
1971) to the splay trees of Sleator and Tarjan in 1985. While the former need
to know the query distribution, the latter are statically optimal. This means
that we can adapt to the query sequence and achieve the same asymptotic
performance as an optimum static structure, without needing any additional
information.Comment: 13 pages, 1 figure, a preliminary version appeared at SoCG 201
The splay-list: A distribution-adaptive concurrent skip-list
The design and implementation of efficient concurrent data structures have
seen significant attention. However, most of this work has focused on
concurrent data structures providing good \emph{worst-case} guarantees. In real
workloads, objects are often accessed at different rates, since access
distributions may be non-uniform. Efficient distribution-adaptive data
structures are known in the sequential case, e.g. the splay-trees; however,
they often are hard to translate efficiently in the concurrent case.
In this paper, we investigate distribution-adaptive concurrent data
structures and propose a new design called the splay-list. At a high level, the
splay-list is similar to a standard skip-list, with the key distinction that
the height of each element adapts dynamically to its access rate: popular
elements ``move up,'' whereas rarely-accessed elements decrease in height. We
show that the splay-list provides order-optimal amortized complexity bounds for
a subset of operations while being amenable to efficient concurrent
implementation. Experimental results show that the splay-list can leverage
distribution-adaptivity to improve on the performance of classic concurrent
designs, and can outperform the only previously-known distribution-adaptive
design in certain settings
- …