Filters








2,104 Hits in 5.5 sec

An efficient algorithm for concurrent priority queue heaps

Galen C. Hunt, Maged M. Michael, Srinivasan Parthasarathy, Michael L. Scott
1996 Information Processing Letters  
We p r e s e n t a new algorithm for concurrent access to array-based priority q u e u e heaps.  ...  Experimental results on a Silicon Graphics Challenge multiprocessor demonstrate good overall performance for the new algorithm on small heaps, and signi cant performance improvements over known alternatives  ...  Acknowledgments We thank Greg Andrews and the anonymous referees for their useful comments that improved both the quality and conciseness of this paper.  ... 
doi:10.1016/s0020-0190(96)00148-2 fatcat:ys3dscd2k5bubbi4xhhbpuun64

Fast Snapshottable Concurrent Braun Heaps [article]

Thomas D. Dickerson
2017 arXiv   pre-print
This paper proposes a new concurrent heap algorithm, based on a stateless shape property, which efficiently maintains balance during insert and removeMin operations implemented with hand-over-hand locking  ...  The simplicity of the algorithm allows it to be easily proven correct, and the choice of shape property provides priority queue performance which is competitive with highly optimized skiplist implementations  ...  Serial priority queues are typically implemented as either a heap or a skiplist, and heaps have stronger guarantees of efficiency.  ... 
arXiv:1705.06271v1 fatcat:nwa3bbfyf5br3idq3dmlaf3hnm

Practical Concurrent Priority Queues [article]

Jakob Gruber
2015 arXiv   pre-print
Such queues are an important element in various areas of computer science such as algorithmics (i.e. Dijkstra's shortest path algorithm) and operating system (i.e. priority schedulers).  ...  Concurrent priority queues have been extensively researched over the past decades.  ...  In this paper, we have outlined the evolution of concurrent priority queues from initial heap-based designs, through a period of increasingly efficient SkipList queues, to current research into relaxed  ... 
arXiv:1509.07053v1 fatcat:std7sncaabfapmlzlgcc6i7u3i

Flat Parallelization [article]

Vitaly Aksenov, Petr Kuznetsov
2017 arXiv   pre-print
To validate the idea, we considered heap-based implementations of a priority queue.  ...  We show that the resulting flat parallelization algorithm performs well compared to state-of-the-art priority queue implementations.  ...  First, given a parallel bulk-update algorithm the technique may automatically produce an efficient concurrent counterpart.  ... 
arXiv:1705.02851v2 fatcat:y6fcah4g5zeejnpnosxwq5u53a

Priority queues and sorting methods for parallel simulation

M.D. Grammatikakis, S. Liesche
2000 IEEE Transactions on Software Engineering  
AbstractÐWe examine the design, implementation, and experimental analysis of parallel priority queues for device and network simulation.  ...  Our experiments with up to 60,000 packets and two to 64 PEs indicate that concurrent priority queues perform much better than distributed ones.  ...  We would also like to thank an anonymous referee for the insightful comments which have helped our presentation.  ... 
doi:10.1109/32.846298 fatcat:ttsc6vx2qvh4bfhhitk5meohbi

Design and implementation of a parallel priority queue on many-core architectures

Xi He, Dinesh Agarwal, Sushil K. Prasad
2012 2012 19th International Conference on High Performance Computing  
GPGPUs can provide powerful computing platform for such non-numeric computations if an efficient parallel priority queue implementation is available.  ...  An efficient parallel priority queue is at the core of the effort in parallelizing important non-numeric irregular computations such as discrete event simulation scheduling and branch-and-bound algorithms  ...  INTRODUCTION A priority queue is an important abstract data structure for many non-numeric computations such as discrete event simulation, branch-and-bound algorithms, and multi-processor scheduling.  ... 
doi:10.1109/hipc.2012.6507490 dblp:conf/hipc/HeAP12 fatcat:l3yvxramknek7hzqgy6fhu2jba

Engineering MultiQueues: Fast Relaxed Concurrent Priority Queues [article]

Marvin Williams, Peter Sanders, Roman Dementiev
2021 arXiv   pre-print
Priority queues with parallel access are an attractive data structure for applications like prioritized online scheduling, discrete event simulation, or greedy algorithms.  ...  Hence, there has been significant interest in concurrent priority queues with relaxed semantics.  ...  Conclusions and Future Work MultiQueues are a simple and efficient approach to relaxed concurrent priority queues.  ... 
arXiv:2107.01350v2 fatcat:qs57dg4tyzfodfra4gxvhjqghe

Early experiences on accelerating Dijkstra's algorithm using transactional memory

Nikos Anastopoulos, Konstantinos Nikas, Georgios Goumas, Nectarios Koziris
2009 2009 IEEE International Symposium on Parallel & Distributed Processing  
We consider the application of Transactional Memory (TM) as a means of concurrent accesses to shared data and compare its performance with straightforward parallel versions of the algorithm based on traditional  ...  In this paper we use Dijkstra's algorithm as a challenging, hard to parallelize paradigm to test the efficacy of several parallelization techniques in a multicore architecture.  ...  [13] implement a concurrent priority queue which is based on binary heaps and supports parallel Insertions and Deletions using fine-grain locking on the nodes of the binary heap.  ... 
doi:10.1109/ipdps.2009.5161103 dblp:conf/ipps/AnastopoulosNGK09 fatcat:pvvfhgfsg5d5zhodhdbuxbr5ey

Flat combining and the synchronization-parallelism tradeoff

Danny Hendler, Itai Incze, Nir Shavit, Moran Tzafrir
2010 Proceedings of the 22nd ACM symposium on Parallelism in algorithms and architectures - SPAA '10  
For an ordered index hosting billions of keys, it may take more than 30 key-comparisons in a lookup, which is an order of magnitude more expensive than that on a hash table.  ...  Wormhole's range operations can be performed by a linear scan of a list after an initial lookup. This improvement of access efficiency does not come at a price of compromised space efficiency.  ...  A Flat Combining Pairing Heap Based Priority Queue But this is not the end of the story for priority queues.  ... 
doi:10.1145/1810479.1810540 dblp:conf/spaa/HendlerIST10 fatcat:krub4izy4nbpfponoir4xqnbde

The Lock-free k-LSM Relaxed Priority Queue [article]

Martin Wimmer, Jakob Gruber, Jesper Larsson Träff, Philippas Tsigas
2015 arXiv   pre-print
Priority queues are data structures which store keys in an ordered fashion to allow efficient access to the minimal (maximal) key.  ...  Priority queues are essential for many applications, e.g., Dijkstra's single-source shortest path algorithm, branch-and-bound algorithms, and prioritized schedulers.  ...  In Section 3 we explain the sequential LSM algorithm used as basis for our concurrent priority queue. Our concurrent algorithm and its implementation is described in Section 4.  ... 
arXiv:1503.05698v1 fatcat:7g5wbzeyo5eypffi266wr4ta7e

A Survey on Priority Queues [chapter]

Gerth Stølting Brodal
2013 Lecture Notes in Computer Science  
Back in 1964 Williams introduced the binary heap as a basic priority queue data structure supporting the operations Insert and Ex-tractMin in logarithmic time.  ...  Since then numerous papers have been published on priority queues. This paper tries to list some of the directions research on priority queues has taken the last 50 years.  ...  Acknowledgment The author would like to thank Rolf Fagerberg, Andy Brodnik, Jyrki Katajainen, Amr Elmasry, Jesper Asbjørn Sindahl Nielsen and the anonymous reviewers for valuable input.  ... 
doi:10.1007/978-3-642-40273-9_11 fatcat:zocxhiyfmvdgzn2yoob25h3wr4

Parallel Combining: Benefits of Explicit Synchronization [article]

Vitaly Aksenov, Petr Kuznetsov, Anatoly Shalyto
2018 arXiv   pre-print
Second, we use a novel parallel batched priority queue to build a concurrent one. In both cases, we obtain performance gains with respect to the state-of-the-art algorithms.  ...  First, we use our technique to design a concurrent data structure optimized for read-dominated workloads, taking a dynamic graph data structure as an example.  ...  Second, the technique might enable the first ever concurrent implementation of certain 0:17 A Priority Queue with Parallel Combining Priority queue is an abstract data type that maintains an ordered  ... 
arXiv:1710.07588v4 fatcat:pymeicohnncphpvoj7bz2lrhxe

MultiQueues: Simpler, Faster, and Better Relaxed Concurrent Priority Queues [article]

Hamza Rihani, Peter Sanders, Roman Dementiev
2014 arXiv   pre-print
Priority queues with parallel access are an attractive data structure for applications like prioritized online scheduling, discrete event simulation, or branch-and-bound.  ...  Hence, there has been significant interest in concurrent priority queues with a somewhat relaxed semantics where deleted elements only need to be close to the minimum.  ...  Acknowledgements We would like to thank the SAP HANA group for bringing the three authors together, and Jean-François Méhaut for providing a testing platform.  ... 
arXiv:1411.1209v1 fatcat:gmwxoaft5zas3jdex5hjq2ncky

A parallel priority queue with fast updates for GPU architectures [article]

John Iacono, Ben Karsin, Nodari Sitchinava
2019 arXiv   pre-print
One such abstract data type is the priority queue. Many well-known algorithms rely on priority queue operations as a building block.  ...  In this paper, we present the parBucketHeap, a parallel, cache-efficient data structure designed for modern GPU architectures that supports standard priority queue operations, as well as bulk update.  ...  Contributions In this work, we present the parallel bucket heap (parBucketHeap), a GPU-efficient priority queue data structure.  ... 
arXiv:1908.09378v1 fatcat:nl56ywkxgndzbpgugxkpbn6q7a

Parallel Combining: Benefits of Explicit Synchronization

Vitaly Aksenov, Petr Kuznetsov, Anatoly Shalyto, Michael Wagner
2018 International Conference on Principles of Distributed Systems  
Second, we use a novel parallel batched priority queue to build a concurrent one. In both cases, we obtain performance gains with respect to the state-of-the-art algorithms.  ...  First, we use parallel combining to design a concurrent data structure optimized for read-dominated workloads, taking a dynamic graph data structure as an example.  ...  Sequential Binary Heap Our batched priority queue is based on the sequential binary heap by Gonnet and Munro [19], one of the simplest and fastest sequential priority queues.  ... 
doi:10.4230/lipics.opodis.2018.11 dblp:conf/opodis/AksenovKS18 fatcat:emyt5nn4y5hoxmkzclv4iroa3y
« Previous Showing results 1 — 15 out of 2,104 results