Models for Parallel and Distributed Computation pp 147-178 | Cite as

# Parallel Graph Algorithms for Coarse-Grained Multicomputers

## 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.

## References

- [1]G. M. Landau A. Amir and U. Vishkin. Efficient pattern matching with scaling.
*Journal of Algorithms*, 13:2–32, 1992.zbMATHCrossRefGoogle Scholar - [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]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]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]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]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]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]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]O. Berkman and U. Vishkin. Recursive star-tree parallel data structure.
*SIAM J. Comput.*, 22(2):221–242, 1993.MathSciNetzbMATHCrossRefGoogle Scholar - [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]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]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]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]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]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]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]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]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]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]D. Harel and R. E. Tarjan. Fast algorithms for finding nearest common ancestors.
*SIAM J. Comput.*, 13(2):338–345, 1984.MathSciNetzbMATHCrossRefGoogle Scholar - [21]J. JáJá, editor.
*An introduction to parallel algorithms*. Addison-Wesley Publishing Company, 1992.zbMATHGoogle Scholar - [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]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]G. L. Miller and J. H. Reif. Parallel tree contraction part 1: Fundamentals.
*Advances in Computing Research*, 5:47–72, 1989.Google Scholar - [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]K. Mulmuley, editor.
*Computational Geometry: An Introduction Through Randomized Algorithms*. Prentice Hall, 1993.zbMATHGoogle Scholar - [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]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]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]J. H. Reif, editor.
*Synthesis of Parallel Algorithms*. Morgan Kaufmann Publishers, 1993.Google Scholar - [31]B. Schieber and U. Vishkin. On finding lowest common ancestors: simplification and parallelization.
*SIAM J. Comput.*, 17:1253–1262, 1988.MathSciNetzbMATHCrossRefGoogle Scholar - [32]Y. Shiloch and U. Vishkin. An o(log
*n)*parallel connectivity algorithm.*Journal ofAlgorithms*, 3(1):57–67, 1983.CrossRefGoogle Scholar - [33]J. Vuillemin. A unified look at data structures.
*Comm. of the ACM*, 23:229–239, 1980.MathSciNetzbMATHCrossRefGoogle Scholar