Algorithmica

, Volume 5, Issue 1–4, pp 43–64 | Cite as

Efficient parallel algorithms for graph problems

  • Clyde P. Kruskal
  • Larry Rudolph
  • Marc Snir
Article

Abstract

We present an efficient technique for parallel manipulation of data structures that avoids memory access conflicts. That is, this technique works on the Exclusive Read/Exclusive Write (EREW) model of computation, which is the weakest shared memory, MIMD machine model. It is used in a new parallel radix sort algorithm that is optimal for keys whose values are over a small range. Using the radix sort and known results for parallel prefix on linked lists, we develop parallel algorithms that efficiently solve various computations on trees and “unicycular graphs.” Finally, we develop parallel algorithms for connected components, spanning trees, minimum spanning trees, and other graph problems. All of the graph algorithms achieve linear speedup for all but the sparsest graphs.

Key words

Biconnected components Connected components Minimum spanning trees Parallel algorithms Parallel processing PRAM Radix sort Spanning trees Tree computations 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [AHU]
    A. V. Aho, J. E. Hopcroft, and J. D. Ullman,The Design and Analysis of Computer Algorithms, Addison-Wesley, Reading, Mass., 1974.MATHGoogle Scholar
  2. [AH]
    M. J. Atallah and S. E. Hambrusch, Solving Tree Problems on a Mesh-Connected Processor Array,Proc. 26th Annual Symposium on Foundations of Computer Science, Oct. 1985, 222–231.Google Scholar
  3. [CT]
    D. Cheriton and R. E. Tarjan, Finding Minimum Spanning Trees,SIAM J. Comput., 1976, 724–742.Google Scholar
  4. [CV1]
    R. Cole and U. Vishkin, Deterministic Coin Tossing and Accelerating Cascades: Micro and Macro Techniques for Designing Parallel Algorithms,Proc. 18th Annual ACM Symposium on Theory of Computation, 1986, 206–219.Google Scholar
  5. [CV2]
    R. Cole and U. Vishkin, Approximate and Exact Parallel Scheduling with Applications to List, Tree and Graph Problems,Proc. 27th Annual Symposium on Foundations of Computer Science, 1986, 478–491.Google Scholar
  6. [CV3]
    R. Cole and U. Vishkin, The Accelerated Centroid Decomposition Technique for Optimal Parallel Tree Evaluation in Logarithm Time, Submitted for Publication.Google Scholar
  7. [E]
    D. M. Eckstein, Parallel Processing Using Depth-First and Breadth-First Search, Ph.D. Thesis, University of Iowa, July 1977.Google Scholar
  8. [K]
    D. E. Knuth,The Art of Computer Programming, Vol. 1, Addison-Wesley, Reading, Mass., 1973.Google Scholar
  9. [KRS]
    C. P. Kruskal, L. Rudolph, and M. Snir, The Power of Parallel Prefix,IEEE Trans. Comput.,34, 1985, 965–968.Google Scholar
  10. [KR]
    S. C. Kwan and W. L. Ruzzo, Adaptive Parallel Algorithms for Finding Minimum Spanning Trees,Proc. 1984 International Conference on Parallel Processing, Aug. 1984, 439–443.Google Scholar
  11. [LF]
    R. Ladner and M. Fischer, Parallel Prefix Computation,J. Assoc. Comput. Mach., 1980, 831–838.Google Scholar
  12. [MR]
    G. Miller and J. Reif, Parallel Tree Contraction and Its Application,Proc. 26th Annual Symposium on Foundations of Computer Science, 1985, 496–503.Google Scholar
  13. [Sc]
    J. T. Schwartz, Ultracomputers,ACM Trans. Program. Lang. Systems, 1980, 484–521.Google Scholar
  14. [Sn]
    M. Snir, On Parallel Searching,Proc. ACM Symposium on Distributed Computing, Aug. 1982, 242–253.Google Scholar
  15. [St]
    Q. F. Stout, Tree-Based Graph Algorithms for Some Parallel Computers,Proc. 1985 International Conference on Parallel Processing, Aug. 1985, 727–731.Google Scholar
  16. [TV]
    R. E. Tarjan and U. Vishkin, Finding Biconnected Components and Computing Tree Functions in Logarithmic Time,Proc. 25th Annual Symposium on Foundations of Computer Science, Oct. 1984, 12–20.Google Scholar
  17. [V]
    U. Vishkin, Randomized Speedups in Parallel Computations,Proc. 16th Annual ACM Symposium on Theory of Computing, April 1984, 230–239.Google Scholar
  18. [W]
    J. C. Wyllie, The Complexity of Parallel Computations, Ph.D. Dissertation, Department of Computer Science, Cornell University, Ithaca, N.Y., 1979.Google Scholar

Copyright information

© Springer-Verlag New York Inc. 1990

Authors and Affiliations

  • Clyde P. Kruskal
    • 1
  • Larry Rudolph
    • 2
  • Marc Snir
    • 3
  1. 1.Computer Science DepartmentUniversity of MarylandCollege ParkUSA
  2. 2.Institute of Mathematics and Computer ScienceThe Hebrew University of JerusalemJerusalemIsrael
  3. 3.IBM T. J. Watson Research CenterYorktown HeightsUSA

Personalised recommendations