Advertisement

Parallel Graph Algorithms for Coarse-Grained Multicomputers

  • S. W. Song
Part of the Applied Optimization book series (APOP, volume 67)

Abstract

Current applications in parallel machines are restricted to trivially parallelizable problems. In real machines communication time is often much greater than cornputation time. Therefore for many non-trivial graph problems, many theoretically efficient parallel algorithms for PRAM or fine grained network models often give disappointing speedups when implemented on real machines. The CGM (Coarse Grained Multicomputer) model was proposed by F. Dehne to be an adequate model of parallelism sufficiently close to existing parallel machines. It is a simple model but nevertheless intends to give a reasonable prediction of performance when parallel algorithms on this model are implemented. CGM algorithms are expected to have theoretical complexity analyses close to actual times observed in real implementations. In this chapter we present the CGM model and discuss several CGM scalable parallel algorithms to solve some basic graph problems, including connected components and list ranking. It is important to have very efficient algorithms for such basic problems because, as shown by J. H. Reif, many important graph problems are based on these subproblems.

Keywords

Coarse grained multicomputer parallel algorithms scalable algorithms graph algorithms list ranking connected components range minima 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    G. M. Landau A. Amir and U. Vishkin. Efficient pattern matching with scaling. Journal of Algorithms, 13:2–32, 1992.zbMATHCrossRefGoogle Scholar
  2. [2]
    J. E. Hoperoft A. V. Aho and J. D. Ullman, editors. The Design and Analysis of Computer Algorithms. Addison-Wesley Publishing Company, 1995.Google Scholar
  3. [3]
    N. Alon and B. Schieber. Optimal preprocessing for answering on-line product queries. Technical Report TR 71/87, The Moise and Frida Eskenasy Inst. of Computer Science, Tel Aviv University, 1987.Google Scholar
  4. [4]
    J. R. Anderson and G. L. Miller. Deterministic parallel list ranking. In J. H. Reif, editor, VLSI Algorithms and Architectures: 3rd Aegean Workshop on Computing, volume 319, pages 81–90. Springer-Verlag, Lecture Notes in Computer Science, 1988.Google Scholar
  5. [5]
    J. R. Anderson and G. L. Miller. A simple randomized parallel algorithm for list ranking. Information Processing Letters, 33(5):269–273, 1990.MathSciNetzbMATHCrossRefGoogle Scholar
  6. [6]
    M. J. Atallah and S. E. Hambrusch. Solving tree problems on a meshconnected processor array. Information and Control, 69:168–187, 1986.MathSciNetzbMATHCrossRefGoogle Scholar
  7. [7]
    S. Baase. Introduction to parallel connectivity, list ranking, and euler tour techniques. In J. H. Reif, editor, Synthesis of Parallel Algorithms. Morgan Kaufmann Publisher, 1993.Google Scholar
  8. [8]
    A. Bäumker and W. Dittrich. Parallel algorithms for image processing: Practical algorithms with experiments. In International Parallel Processing Symposium, pages 429–433. IEEE Computer Society, 1996.Google Scholar
  9. [9]
    O. Berkman and U. Vishkin. Recursive star-tree parallel data structure. SIAM J. Comput., 22(2):221–242, 1993.MathSciNetzbMATHCrossRefGoogle Scholar
  10. [10]
    R. Cole and U. Vishkin. Approximate parallel scheduling, part i: the basic technique with applications to optimal parallel list ranking in logarithmic time. SIAM J. Computing, 17(1):128–142, 1988.MathSciNetzbMATHCrossRefGoogle Scholar
  11. [11]
    F. Dehne and S. W. Song. Randomized parallel list ranking for distributed memory multiprocessors. In Second Asian Computing Science Conference, volume 1179, pages 1–10. Springer-Verlag, Lecture Notes in Computer Science, 1996.Google Scholar
  12. [12]
    E. Caceres et al. Efficient parallel graph algorithms for coarse grained multicomputers and bsp. In A. Marchetti-Spaccamela P. Degano, R. Gorrieri, editor, Proceedings ICALP’97 – 24th International Colloquium on Automata, Languages, and Programming, volume 1256, pages 390–400. Springer-Verlag, Lecture Notes in Computer Science, 1997.Google Scholar
  13. [13]
    F. Dehne et al. A randomized parallel 3d convex hull algorithm for coarse grained rnulticomputers. In Proc. ACM Symposium on Parallel Algorithms and Architectures (SPAA’95), pages 27–33. ACM, 1995.Google Scholar
  14. [14]
    L. G. Valiant et al. General purpose parallel architectures. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, pages 943–972. MIT Press/Elsevier, 1990.Google Scholar
  15. [15]
    A. Fabri F. Dehne and C. Kenyon. Scalable and architecture independent parallel geometric algorithms with high probability optimal time. In Proc. 6th IEEE Symposium on Parallel and Distributed Processing, pages 586–593. IEEE Computer Society, 1994.Google Scholar
  16. [16]
    A. Fabri A. F. Dehne and Rau-Chaplin. Scalable parallel geometric algorithms for coarse grained multicomputers. In Proc. ACM 9th Annual Computational Geometry, pages 298–307. ACM, 1993.Google Scholar
  17. [17]
    B. M. Maggs G. E. Blelloch, C. E. Leiserson and C. G. Plaxton. A cornparison of sorting algorithms for the connection machine cm-2. In Proc. ACM Symp. on Parallel Algorithms and Architectures, pages 3–16. ACM, 1991.Google Scholar
  18. [18]
    G. L. Miller R. H. and Reif. Parallel tree contraction part 1: Further applications. SIAM J. Computing, 20(6):1128–1147, December 1991.zbMATHCrossRefGoogle Scholar
  19. [19]
    J. L. Bentley H. N. Gabow and R. E. Tarjan. Scaling and related techniques for geometry problems. In Proc. 16th ACM Symp. On Theory of Computing, pages 135–143. ACM, 1984.Google Scholar
  20. [20]
    D. Harel and R. E. Tarjan. Fast algorithms for finding nearest common ancestors. SIAM J. Comput., 13(2):338–345, 1984.MathSciNetzbMATHCrossRefGoogle Scholar
  21. [21]
    J. JáJá, editor. An introduction to parallel algorithms. Addison-Wesley Publishing Company, 1992.zbMATHGoogle Scholar
  22. [22]
    R. Lin and S. Olariu. A simple optimal parallel algorithm to solve the lowest common ancestor problem. In Proc. of International Conference on Computing and Information, volume 497, pages 455–461. Springer-Verlag, Lecture Notes in Computer Science, 1991.Google Scholar
  23. [23]
    C. L. Miller M. Reid-Miller and F. Modugno. List ranking and parallel tree compaction. In J. H. Reif, editor, Synthesis of Parallel Algorithms. Morgan Kaufmann Publisher, 1993.Google Scholar
  24. [24]
    G. L. Miller and J. H. Reif. Parallel tree contraction part 1: Fundamentals. Advances in Computing Research, 5:47–72, 1989.Google Scholar
  25. [25]
    H. Mongelli and S. W. Song. A range minima parallel algorithm for coarse grained multicomputers. In José Rolim et al., editor, IPPS99/Irregular — Sixth International Workshop on Solving Irregularly Structured Problems in Parallel, volume 1586, pages 1075–1084. Springer-Verlag, Lecture Notes in Computer Science, 1999.Google Scholar
  26. [26]
    K. Mulmuley, editor. Computational Geometry: An Introduction Through Randomized Algorithms. Prentice Hall, 1993.zbMATHGoogle Scholar
  27. [27]
    B. Schieber O. Berkman and U. Vishkin. Optimal doubly logarithmic parallel algorithms based on finding all nearest smaller values. Journal of Algorithms, 14:344–370, 1993.MathSciNetzbMATHCrossRefGoogle Scholar
  28. [28]
    V. L. Ramachandran and U. Vishkin. Efficient parallel triconectivity in logarithmic parallel time. In Proceedings ofAWOC’88, volume 319, pages 33–42. Springer-Verlag, Lecture Notes in Computer Science, 1988.Google Scholar
  29. [29]
    M. Reid-Miller. List ranking and list scan on the cray c-90. In ACM Symp. on Parallel Algorithms and Architectures, pages 104–113. ACM, 1994.Google Scholar
  30. [30]
    J. H. Reif, editor. Synthesis of Parallel Algorithms. Morgan Kaufmann Publishers, 1993.Google Scholar
  31. [31]
    B. Schieber and U. Vishkin. On finding lowest common ancestors: simplification and parallelization. SIAM J. Comput., 17:1253–1262, 1988.MathSciNetzbMATHCrossRefGoogle Scholar
  32. [32]
    Y. Shiloch and U. Vishkin. An o(log n) parallel connectivity algorithm. Journal ofAlgorithms, 3(1):57–67, 1983.CrossRefGoogle Scholar
  33. [33]
    J. Vuillemin. A unified look at data structures. Comm. of the ACM, 23:229–239, 1980.MathSciNetzbMATHCrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media Dordrecht 2002

Authors and Affiliations

  • S. W. Song
    • 1
  1. 1.IME/USPSão PauloBrazil

Personalised recommendations