Skip to main content

Priority queues on parallel machines

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1097))

Abstract

We present time and work optimal priority queues for the CREW PRAM, supporting FindMin in constant time with one processor and MakeQueue, Insert, Meld, Findmin, Extractmin, Delete and DecreaseKey in constant time with O(log n) processors. A priority queue can be build in time O(log n) with O(n/log n) processors and k elements can be inserted into a priority queue in time O(log k) with O((log n + k)/log k) processors. With a slowdown of O(log log n) in time the priority queues adopt to the EREW PRAM by only increasing the required work by a constant factor. A pipelined version of the priority queues adopt to a processor array of size O(log n), supporting the operations MakeQueue, Insert, Meld, FindMin, Extractmin, Delete and DecreaseKey in constant time.

Supported by the Danish Natural Science Research Council (Grant No. 9400044). This research was done while visiting the Max-Planck Institut für Informatik, Saarbrücken, Germany.

Basic Research in Computer Science, a Centre of the Danish National Research Foundation.

This is a preview of subscription content, log in via an institution.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Gerth Stølting Brodal. Fast meldable priority queues. In Proc. 4th Workshop on Algorithms and Data Structures (WADS), volume 955 of Lecture Notes in Computer Science, pages 282–290. Springer Verlag, Berlin, 1995.

    Google Scholar 

  2. Gerth Stølting Brodal. Worst-case efficient priority queues. In Proc. 7th ACM-SIAM Symposium on Discrete Algorithms (SODA), pages 52–58, 1996.

    Google Scholar 

  3. Danny Z. Chen and Xiaobo Hu. Fast and efficient operations on parallel priority queues (preliminary version). In Algorithms and Computation: 5th International Symposium, ISAAC '93, volume 834 of Lecture Notes in Computer Science, pages 279–287. Springer Verlag, Berlin, 1994.

    Google Scholar 

  4. Paul F. Dietz. Heap construction in the parallel comparison tree model. In Proc. 3rd Scandinavian Workshop on Algorithm Theory (SWAT), volume 621 of Lecture Notes in Computer Science, pages 140–150. Springer Verlag, Berlin, 1992.

    Google Scholar 

  5. Paul F. Dietz and Rajeev Raman. Very fast optimal parallel algorithms for heap construction. In Proc. 6th Symposium on Parallel and Distributed Processing, pages 514–521, 1994.

    Google Scholar 

  6. James R. Driscoll, Harold N. Gabow, Ruth Shrairman, and Robert E. Tarjan. Relaxed heaps: An alternative to fibonacci heaps with applications to parallel computation. Communications of the ACM, 31(11):1343–1354, 1988.

    Article  Google Scholar 

  7. Robert W. Floyd. Algorithm 245: Treesort3. Communications of the ACM, 7(12):701, 1964.

    Google Scholar 

  8. Michael L. Fredman, Robert Sedgewick, Daniel D. Sleator, and Robert E. Tarjan. The pairing heap: A new form of self-adjusting heap. Algorithmica, 1:111–129, 1986.

    Google Scholar 

  9. Michael L. Fredman and Robert Endre Tarjan. Fibonacci heaps and their uses in improved network optimization algorithms. In Proc. 25rd Ann. Symp. on Foundations of Computer Science (FOCS), pages 338–346, 1984.

    Google Scholar 

  10. Joseph JáJá. An Introduction to Parallel Algorithms. Addison-Wesley, 1992.

    Google Scholar 

  11. C. M. Khoong. Optimal parallel construction of heaps. Information Processing Letters, 48:159–161, 1993.

    Google Scholar 

  12. F. Thomson Leighton. Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes. Morgan Kaufmann, 1992.

    Google Scholar 

  13. Kurt Mehlhorn and Athanasios K. Tsakalidis. Data structures. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, Volume A: Algorithms and Complexity. MIT Press/Elsevier, 1990.

    Google Scholar 

  14. Maria Cristina Pinotti, Sajal K. Das, and Vincenzo A. Crupi. Parallel and distributed meldable priority queues based on binomial heaps. In Int. Conference on Parallel Processing, 1996.

    Google Scholar 

  15. Maria Cristina Pinotti and Geppino Pucci. Parallel priority queues. Information Processing Letters, 40:33–40, 1991.

    Google Scholar 

  16. Maria Cristina Pinotti and Geppino Pucci. Parallel algorithms for priority queue operations. In Proc. 3rd Scandinavian Workshop on Algorithm Theory (SWAT), volume 621 of Lecture Notes in Computer Science, pages 130–139. Springer Verlag, Berlin, 1992.

    Google Scholar 

  17. A. Ranade, S. Cheng, E. Deprit, J. Jones, and S. Shih. Parallelism and locality in priority queues. In Proc. 6th Symposium on Parallel and Distributed Processing, pages 490–496, 1994.

    Google Scholar 

  18. Nageswara S. V. Rao and Weixiong Zhang. Building heaps in parallel. Information Processing Letters, 37:355–358, 1991.

    Article  Google Scholar 

  19. Jean Vuillemin. A data structure for manipulating priority queues. Communications of the ACM, 21(4):309–315, 1978.

    Article  Google Scholar 

  20. J. W. J. Williams. Algorithm 232: Heapsort. Communications of the ACM, 7(6):347–348, 1964.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Rolf Karlsson Andrzej Lingas

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Brodal, G.S. (1996). Priority queues on parallel machines. In: Karlsson, R., Lingas, A. (eds) Algorithm Theory — SWAT'96. SWAT 1996. Lecture Notes in Computer Science, vol 1097. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-61422-2_150

Download citation

  • DOI: https://doi.org/10.1007/3-540-61422-2_150

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-61422-7

  • Online ISBN: 978-3-540-68529-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics