Fibonacci heaps and their uses in improved network optimization algorithms
Journal of the ACM (JACM)
Faster algorithms for the shortest path problem
Journal of the ACM (JACM)
Performance of priority queue structures in a virtual memory environment
The Computer Journal - Special issue on data structures
Suffix arrays: a new method for on-line string searches
SIAM Journal on Computing
The influence of caches on the performance of heaps
Journal of Experimental Algorithmics (JEA)
Simple randomized mergesort on parallel disks
Parallel Computing - Special double issue: parallel I/O
PODS '98 Proceedings of the seventeenth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Heaps and heapsort on secondary storage
Theoretical Computer Science
Buckets, Heaps, Lists, and Monotone Priority Queues
SIAM Journal on Computing
External-memory graph algorithms
Proceedings of the sixth annual ACM-SIAM symposium on Discrete algorithms
Proceedings of the seventh annual ACM-SIAM symposium on Discrete algorithms
LEDA: a platform for combinatorial and geometric computing
LEDA: a platform for combinatorial and geometric computing
A Parallelization of Dijkstra's Shortest Path Algorithm
MFCS '98 Proceedings of the 23rd International Symposium on Mathematical Foundations of Computer Science
Worst-Case External-Memory Priority Queues
SWAT '98 Proceedings of the 6th Scandinavian Workshop on Algorithm Theory
The Buffer Tree: A New Technique for Optimal I/O-Algorithms (Extended Abstract)
WADS '95 Proceedings of the 4th International Workshop on Algorithms and Data Structures
On Constructing Suffix Arrays in External Memory
ESA '99 Proceedings of the 7th Annual European Symposium on Algorithms
Overcoming the Memory Bottleneck in Suffix Tree Construction
FOCS '98 Proceedings of the 39th Annual Symposium on Foundations of Computer Science
Supporting I/O-efficient scientific computation in TPIE
SPDP '95 Proceedings of the 7th IEEE Symposium on Parallel and Distributeed Processing
Improved Algorithms and Data Structures for Solving Graph Problems in External Memory
SPDP '96 Proceedings of the 8th IEEE Symposium on Parallel and Distributed Processing (SPDP '96)
Terracost: Computing least-cost-path surfaces for massive grid terrains
Journal of Experimental Algorithmics (JEA)
Algorithms and data structures for external memory
Foundations and Trends® in Theoretical Computer Science
Hi-index | 0.01 |
In this paper we compare the performance of eight different priority queue implementations: four of them are explicitly designed to work in an external-memory setting, the others are standard internal-memory queues available in the LEDA library [Mehlhorn and Näher 1999]. Two of the external-memory priority queues are obtained by engineering known internal-memory priority queues with the aim of achieving effective performance on external storage devices (i.e., Radix heaps [Ahuja et al. 1990] and array heaps [Thorup 1996]). Our experimental framework includes some simple tests, like random sequences of insert or delete-minimum operations, as well as more advanced tests consisting of intermixed sequences of update operations and "application driven" update sequences originated by simulations of Dijkstra's algorithm on large graph instances. Our variegate spectrum of experimental results gives a good picture of the features of these priority queues, thus being helpful to anyone interested in the use of such data structures on very large data sets.