Efficient Randomized Algorithms for Parallel and Distributed Machines

  • David S. L. Wei
  • Kishirasagar Naik
Part of the Combinatorial Optimization book series (COOP, volume 5)

Abstract

In this chapter, our goal is to demonstrate the power of randomization in designing efficient parallel algorithms as well as the distributed ones. The specific problems we are concerned with are routing, sorting, PRAM emulation, and selection. We show that with randomization techniques optimal or near optimal routing, sorting and selection algorithms can be obtained for various well-known networks including mesh, hypercube, de Bruijn, and star graph. Using the obtained routing algorithms, optimal emulations of the CRCW PRAM on these networks are also given. We show that using randomization techniques, efficient selection and sorting schemes for processing large files distributed over a network can be developed. The schemes are developed using sampling techniques.

Keywords

Selection Algorithm Parallel Algorithm Emulation Algorithm Delay Path Communication Delay 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    S. Akers, D. Harel, and B. Krishnamurthy, “The Star Graph: An Attractive Alternative to the n-Cube,” Proc. International Conference of Parallel Processing, 1987, pp. 393–400.Google Scholar
  2. [2]
    R. Aleliunas, “Randomized parallel communication,” Proc. Symposium on Principles of Distributed Computing, 1982, pp. 60–72.Google Scholar
  3. [3]
    M. Blum, R. Floyd, V.R. Pratt, R. Rivest, and R. Tarjan, “Time Bounds for Selection,” Journal of Computer and System Science, vol. 7, no. 4, 1972, pp. 448–461.MathSciNetCrossRefGoogle Scholar
  4. [4]
    A. Borodin and J. E. Hopcroft, “Routing, merging and sorting on parallel models of computation,” Proc. Symposium on Theory of Computing, 1982, pp. 338–344.Google Scholar
  5. [5]
    R.W. Floyd and R.L. Rivest, “Expected Time Bounds for Selection,” Comm. of the ACM, vol. 18, no. 3, March 1975, pp. 165–172.MATHCrossRefGoogle Scholar
  6. [6]
    G.N. Frederickson, “Tradeoffs for Selection in Distributed Networks,” in Proceedings of 2nd ACM Symposium on Principles of Distributed Computing, 1983, pp. 154–160.Google Scholar
  7. [7]
    Jr. M. Hall, “Combinatorial Theory,” Second Edition, John Ailey and Sons, New York, 1986.Google Scholar
  8. [8]
    C.A.R. Hoare, “Quicksort,” Computer Journal, vol. 5, no. 1, 1962, pp. 10–15.MathSciNetMATHCrossRefGoogle Scholar
  9. [9]
    R. Karp and V. Ramachandran, “Parallel Algorithms for Shared-Memory Machines,” in Handbook of Theoretical Computer Science, North-Holland, 1990.Google Scholar
  10. [10]
    C. Kaklamanis, D. Krizanc, L. Narayanan, and Th. Tsantilas, “Randomized Sorting and Selection on Mesh Connected Processor Arrays,” Proc. ACM Symposium on Parallel Algorithms and Architectures, 1991.Google Scholar
  11. [11]
    A. Karlin and E. Upfal, “Parallel Hashing-An Efficient Implementation of Shared Memory,” Proc. Symposium on Theory of Computing, 1986, pp. 160–166.Google Scholar
  12. [12]
    D. Krizanc, S. Rajasekaran, and T. Tsantilas, “Optimal Routing Algorithms for Mesh-Connected Processor Arrays,” Proc. Aegean Workshop on Computing, 1988. Springer-Verlag Lecture Notes in Computer Science # 319, pp. 411–422.Google Scholar
  13. [13]
    M. Kunde, “Routing and Sorting on Mesh-Connected Arrays,” Proc. Aegean Workshop on Computing, 1988. Springer-Verlag Lecture Notes in Computer Science # 319, pp. 423–433.Google Scholar
  14. [14]
    T. Leighton, B. Maggs, and S. Rao, “Universal packet routing algorithms,” Proc. Symposium on Foundations of Computer Science, 1988, pp. 256–269.Google Scholar
  15. [15]
    T. Leighton, F. Makedon, and I.G. Tollis, “A 2n - 2 Step Algorithm for Routing in an n x n Array With Constant Size Queues,” Proc. Symposium on Parallel Algorithms and Architectures, 1989, pp. 328–335.Google Scholar
  16. [16]
    J.I. Munro and M.S. Paterson, “Selection and Sorting with Limited Storage,” Theoretical Computer Science 12, 1980, pp. 315–323.MathSciNetMATHCrossRefGoogle Scholar
  17. [17]
    A. Menn and A.K. Somani, “An Efficient Sorting Algorithm for the Star Graph Interconnection Network,” Proc. International Conference on Parallel Processing, 1990, vol. 3, pp. 1–8.Google Scholar
  18. [18]
    D. Nassimi and S. Sahni, “Parallel Permutation and Sorting Algorithms and a New Generalized Connection Network,” JACM, July 1982, pp. 642– 667.Google Scholar
  19. [19]
    M. Palis, S. Rajasekaran, and D.S.L. Wei, “Packet Routing; and PRAM Emulation on Star Graphs and Leveled Networks,” Journal of Parallel and Distributed Computing, vol. 20, no. 2, Feb. 1994, pp. 145–157.MATHCrossRefGoogle Scholar
  20. [20]
    M. Palis, S. Rajasekaran, and D.S.L. Wei, “Emulation of PRAMs on Leveled Networks,” I, Chicago, August, 1991, pp.I-418–421.Google Scholar
  21. [21]
    N. Pippenger, “Parallel communication with limited buffers,” Proc. Symposium on Foundations of Computer Science, 1984, pp. 127–136.Google Scholar
  22. [22]
    M.O. Rabin, “Probabilistic Algorithms,” in: Traub, J.F., ed., Algorithms and Complexity, Academic Press, New York, 1976, pp. 21–36.Google Scholar
  23. [23]
    S. Rajasekaran, “Randomized Selection on the Hypercube.” Journal of Parallel and Distributed Computing, 37 (2), 1996, pp. 187–193.MathSciNetCrossRefGoogle Scholar
  24. [24]
    S. Rajasekaran, “k-k Routing, k-k Sorting, and Cut Through Routing on the Mesh,” TR, Dept. of CIS, University of Pennsylvania, Oct. 1991.Google Scholar
  25. [25]
    S. Rajasekaran and J.H. Reif, “Derivation of Randomized Sorting and Selection Algorithms,” in Parallel Algorithm Derivation And Program Transformation, edited by Paige, Reif, and Wachter, Kluwer Academic Publishers, 1993, pp. 187–205.CrossRefGoogle Scholar
  26. [26]
    S. Rajasekaran and J.H. Reif, “Optimal and Sub-Logarithmic Time Randomized Parallel Sorting Algorithms,” SIAM Journal on Computing, 18 (3), 1989, pp. 594–607.MathSciNetMATHCrossRefGoogle Scholar
  27. [27]
    S. Rajasekaran, and S. Sen, “Random Sampling Techniques and Parallel Algorithms Design,” in Synthesis of Parallel Algorithms, editor: Reif, J.H., Morgan-Kaufmann Publishers, San Mateo, California, 1993.Google Scholar
  28. [28]
    S. Rajasekaran, W. Chen, and S. Yooseph., “Unifying Themes for Selection on Any Network,” Journal of Parallel and Distributed Computing 46 (1), 1997, pp. 105–111.MATHCrossRefGoogle Scholar
  29. [29]
    S. Rajasekaran and D.S.L. Wei, “Selection, Routing and Sorting on the Star Graph,” Journal of Parallel and Distributed Computing, vol. 41, April, 1997, pp. 225–233.Google Scholar
  30. [30]
    S. Rajasekaran and D.S.L. Wei, “Designing Efficient Distributed Algorithms Using Sampling Techniques,” 11th International Parallel Processing Symposium, IEEE, Geneva, Switzerland, April 1–5, 1997 (with S. Rajasekaran).Google Scholar
  31. [31]
    S. Rajasekaran and D.S.L. Wei, “Efficient Selection and Sorting Schemes for Processing Large Distributed Files in de Bruijn Networks and Hypercubes,” under a second round of review for IEEE Transactions on Computers.Google Scholar
  32. [32]
    A.G. Ranade, “How to Emulate Shared Memory,” Proc. Symposium on Foundations of Computer Science, 1987, pp. 185–194.Google Scholar
  33. [33]
    R. Reischuk, “Probabilistic Parallel Algorithms for Sorting and Selection,” SIAM Journal of Computing, 14 (2), 1985, pp. 396–411.MathSciNetMATHCrossRefGoogle Scholar
  34. [34]
    J.H. Reif and L.G. Valiant, “A Logarithmic Time Sort for Linear Size Networks,” JACM, volume 34, January, 1987, pp. 60–76.Google Scholar
  35. [35]
    L. Shrira, N. Francez, and M. Rodeh, “Distributed K-Selection: From a Sequential to a Distributed Algorithm,” in Proceedings of 2nd ACM Symposium on Principles of Distributed Computing, 1983, pp. 143–153.Google Scholar
  36. [36]
    R. Solovay, and V. Strassen, “A Fast Monte-Carlo Test for Primality,” SIAM Journal on Computing, vol. 6, 1977, pp. 84–85.MathSciNetMATHCrossRefGoogle Scholar
  37. [37]
    E. Upfal, “Efficient schemes for parallel communication,” Journal of the ACM, vol. 31, no. 3, 1984, pp. 507–517.MathSciNetMATHCrossRefGoogle Scholar
  38. [38]
    L.G. Valiant, “A Scheme for Fast Parallel Communication.” SIAM Journal on Computing, 11 (2), 1982, pp. 350–361.MathSciNetMATHCrossRefGoogle Scholar
  39. [39]
    L.G. Valiant and G.J. Brebner, “Universal Schemes for Parallel Communication,” Proc. Symposium on Theory of Computing, 1981, pp. 263–277.Google Scholar
  40. [40]
    U. Vishkin, “An Optimal Parallel Algorithm for Selection,” Unpublished manuscript, 1983.Google Scholar
  41. [41]
    L.M. Wegner, “Sorting a Distributed File in a Network,” in Proc. Princeton Conf. Inform. Sci. Syst., 1982, pp. 505–509.Google Scholar
  42. [42]
    D.S.L. Wei, “Fast Parallel Routing and Computation on Interconnection Networks,” Ph.D. Thesis, Univ. of Pennsylvania, Jan. 1991.Google Scholar
  43. [43]
    D.S.L. Wei, S. Rajasekaran, Z. Cheng, K. Naik, and S.Y. Kuo, “Efficient Selection and Sorting Schemes Using Coteries for Processing Large Distributed Files,” submitted.Google Scholar

Copyright information

© Kluwer Academic Publishers 1999

Authors and Affiliations

  • David S. L. Wei
    • 1
  • Kishirasagar Naik
    • 2
  1. 1.Department of Computer and Information SciencesFordham UniversityBronxUSA
  2. 2.Department of Computer SoftwareUniversity of AizuAizu-WakamatsuJapan

Personalised recommendations