Skiplist-based concurrent priority queues

@article{Shavit2000SkiplistbasedCP,
  title={Skiplist-based concurrent priority queues},
  author={Nir Shavit and Itay Lotan},
  journal={Proceedings 14th International Parallel and Distributed Processing Symposium. IPDPS 2000},
  year={2000},
  pages={263-268}
}
  • N. Shavit, Itay Lotan
  • Published 2000
  • Computer Science
  • Proceedings 14th International Parallel and Distributed Processing Symposium. IPDPS 2000
This paper addresses the problem of designing scalable concurrent priority queues for large scale multiprocessors machines with up to several hundred processors. [...] Key Method To this end, we show that a concurrent skiplist structure, following a simple set of modifications, provides a concurrent priority queue with a higher level of parallelism and significantly less contention than the fastest known heap-based algorithms. Our initial empirical evidence, collected on a simulated 256 node shared memory…Expand
Practical Concurrent Priority Queues
TLDR
Three major ideas within the field of concurrent priority queues are discussed: fine-grained locking employs multiple locks to avoid a single bottleneck within the queue; SkipLists are search structures which use randomization and therefore do not require elaborate reorganization schemes; and relaxed data structures trade semantic guarantees for improved scalability. Expand
The Contention Avoiding Concurrent Priority Queue
TLDR
This work presents the contention avoiding concurrent priority queue (CA-PQ), a data structure that functions as a linearizable concurrent priority with traditional semantics under low contention, but activates contention avoiding techniques that give it more relaxed semantics when high contention is detected. Expand
MultiQueues: Simpler, Faster, and Better Relaxed Concurrent Priority Queues
TLDR
This work focuses on scheduling of jobs with priorities in data managementsystems to support quality of service guarantees (Service Level Agreements) and turns out to outperform previous more complicated data structures while at the same time improving the quality of the returned elements. Expand
A Skiplist-Based Concurrent Priority Queue with Minimal Memory Contention
TLDR
This work presents a linearizable, lock-free, concurrent priority queue algorithm, based on skiplists, which minimizes the contention for shared memory that is caused by the DeleteMin operation. Expand
Priority Queues Are Not Good Concurrent Priority Schedulers
TLDR
This paper shows that by exploiting the fact that algorithms amenable to priority scheduling are often robust to small deviations from a strict priority order, and by optimizing the scheduler for the cache hierarchy of current multicore and NUMA processors, this work can implement concurrent priority schedulers that improve the end-to-end performance of complex irregular benchmarks by orders of magnitude. Expand
The SprayList : a scalable relaxed priority queue Citation
High-performance concurrent priority queues are essential for applications such as task scheduling and discrete event simulation. Unfortunately, even the best performing implementations do not scaleExpand
Fast and lock-free concurrent priority queues for multi-thread systems
We present an efficient and practical lock-free implementation of a concurrent priority queue that is suitable for both fully concurrent (large multi-processor) systems as well as pre-emptiveExpand
The SprayList: a scalable relaxed priority queue
TLDR
The SprayList is presented, a scalable priority queue with relaxed ordering semantics that is comparable to a classic unordered SkipList, and it is proved that the running time of a DeleteMin operation is O(log^3 p), with high probability, independent of the size of the list. Expand
Non-~blocking Priority Queue based on Skiplists with Relaxed Semantics
TLDR
This work presents a relaxed non-blocking priority queue based on skiplists that addresses all the design issues mentioned above in the priority queue. Expand
A Lock-Free Priority Queue Design Based on Multi-Dimensional Linked Lists
TLDR
A quiescently consistent lock-free priority queue based on a multi-dimensional list that guarantees worst-case search time of O(logN) for key universe of size N is proposed and achieves an average of 50 percent speedup over the state of the art approaches under high concurrency. Expand
...
1
2
3
4
5
...

References

SHOWING 1-10 OF 53 REFERENCES
Scalable concurrent priority queue algorithms
TLDR
This paper addresses the problem of designing bounded range priority queues, that is, queues that support a fixed range of priorities and presents two simple new algorithms, LinearFunnels and FunnelTree, that provide true scalability throughout the concurrency range. Expand
An evaluation of concurrent priority queue algorithms
  • Qin Huang, W. Weihl
  • Computer Science
  • Proceedings of the Third IEEE Symposium on Parallel and Distributed Processing
  • 1991
This paper describes the design and experimental evaluation of two novel concurrent priority queue algorithms, a parallel Fibonacci heap and a concurrent priority pool, and compares them with theExpand
An Efficient Algorithm for Concurrent Priority Queue Heaps
TLDR
Experimental results on a Silicon Graphics Challenge multiprocessor demonstrate good overall performance for the new algorithm on small heaps, and significant performance improvements over known alternatives on large heaps with mixed insertion/deletion workloads. Expand
Concurrent Access of Priority Queues
TLDR
Experimental results on the BBN Butterfly parallel processor demonstrate that the use of concurrent-heap algorithms in parallel branch-and-bound improves its performance substantially. Expand
LR-algorithm: concurrent operations on priority queues
  • R. Ayani
  • Computer Science
  • Proceedings of the Second IEEE Symposium on Parallel and Distributed Processing 1990
  • 1990
TLDR
The paper proposes a new method, the LA-algorithm, which allows concurrent insertions on priority queues, which directs any two consecutive insertion requests to two different subtrees and thus provides a possibility to perform these insertions in parallel. Expand
Parallel heap: A practical priority queue for fine-to-medium-grained applications on small multiprocessors
  • S. Prasad, S. I. Sawant
  • Computer Science
  • Proceedings.Seventh IEEE Symposium on Parallel and Distributed Processing
  • 1995
TLDR
An efficient implementation of the parallel heap data structure on a bus-based Silicon Graphics multiprocessor GTX/4D achieving speedups of two to four using six processors relative to the best sequential execution times is presented. Expand
Randomized Priority Queues for Fast Parallel Access
  • P. Sanders
  • Computer Science
  • J. Parallel Distributed Comput.
  • 1998
TLDR
This work presents simple randomized algorithms for parallel priority queues on distributed memory machines that improve over the best previously known algorithms for many interconnection networks and even matches the speed of the best known PRAM algorithms. Expand
Parallelism and locality in priority queues
TLDR
It is shown that using a d-dimensional array (constant d) of P processors the authors can insert or delete the smallest P elements from a heap in time O(P/sup 1/d/log/Sup 1-1/ d/ P), where the number of elements in the heap is assumed to be polynomial in P. Expand
Parallel Priority Queues
TLDR
This paper introduces the Parallel Priority Queue (PPQ) abstract data type, and shows that insertion of n new items in a PPQ of m elements can be performed in parallel time O(h +log n), where h = log(m/n), while deletion of the n smallest items can be performing in time O (h+ log log n). Expand
Optimal Parallel Initialization Algorithms for a Class of Priority Queues
  • S. Olariu, Z. Wen
  • Computer Science
  • IEEE Trans. Parallel Distributed Syst.
  • 1991
An adaptive parallel algorithm for inducing a priority queue structure on an n-element array is presented. The algorithm is extended to provide optimal parallel construction algorithms for threeExpand
...
1
2
3
4
5
...