Binary trees and parallel scheduling algorithms

  • Eliezer Dekel
  • Sartaj Sahni
Parallelism Of Numerical Algorithms
Part of the Lecture Notes in Computer Science book series (LNCS, volume 111)


This paper examines the use of binary trees in the design of efficient parallel algorithms. Using binary trees, we develop efficient algorithms for several scheduling problems. The shared memory model for parallel computation is used. Our success in using binary trees for parallel computations, indicates that the binary tree is an important and useful design tool for parallel algorithms.

Keywords and Phrases

Parallel algorithms design methodologies complexity scheduling shared memory model 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Agerwala, T. and Lint, B., "Communication in Parallel Algorithms for Boolean Matrix Multiplication," Proc. 1978 Int. Conf. on Parallel Processing, IEEE pp. 146–153, 1978.Google Scholar
  2. 2.
    Arjomandi, E., "A study of parallelism in graph theory," Ph.D. thesis, Computer Science department, University of Toronto, December 1975.Google Scholar
  3. 3.
    Baker, K. R. and Su, Z.-S., "Sequencing with due-dates and early start times to minimize maximum tardiness," Naval Res. Logist. Quart. vol. 21, pp. 171–176, 1974.MATHCrossRefMathSciNetGoogle Scholar
  4. 4.
    Batcher, K. E., "Sorting networks and their applications," Proc. AFIPS 1968 SJCC, Vol. 32., AFIPS Press, Montvale, NJ, pp. 307–314.Google Scholar
  5. 5.
    Batcher, K. E., "MPP-a massively parallel processor," Proc. 1979 Int. Conf. on Parallel Procesing, IEEE, p 249, 1979Google Scholar
  6. 6.
    Blazewicz, J., "Simple algorithm for multiprocessor scheduling to meet deadlines," Info. Processing Letters, Vol. 6, Number 5, pp. 162–164, 1977.MATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Brent, R. P., "The parallel evaluation of general arithmetic expressions," JACM, Vol. 21, No. 2, April, 1974, pp. 201–206.MATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Csanky, L., "Fast parallel matrix inversion algorithms," Proc. 6th IEEE Symp. on Found. of Computer Science, October 1975, pp. 11–12.Google Scholar
  9. 9.
    Dekel, E., Nassimi, D., and Sahni S., "Parallel matrix and graph algorithms," University of Minnesota, TR 79-10, 1979. To appear in SIAM. J. Compute. Google Scholar
  10. 10.
    Dekel, E. and Sahni, S., "Parallel scheduling algorithms," University of Minnesota, Technical Report, TR 81-1, 1981.Google Scholar
  11. 11.
    Eckstein, D., "Parallel graph processing using depth-first search and breadth first search," Ph.D. Thesis, University of Iowa, 1977.Google Scholar
  12. 12.
    Hirschberg, D. S., "Parallel algorithms for the transitive closure and the connected component problems," Proc. 8th ACM Symp. on Theo. of Comput., May 1976, pp. 55–57.Google Scholar
  13. 13.
    Hirschberg, D. S., "Fast parallel sorting algorithms," CACM, Vol. 21, No. 8, August 1978, pp. 657–661.MATHMathSciNetGoogle Scholar
  14. 14.
    Horn, W. A., "Some simple scheduling algorithms," Naval Res. Logist. Quart., Vol. 21, pp. 177–185, 1974.MATHCrossRefMathSciNetGoogle Scholar
  15. 15.
    Horowitz, E. and Sahni, S., "Fundamentals of computer algorithms," Computer Science Press, Potomac, MD, 1978.MATHGoogle Scholar
  16. 16.
    Jackson, J. K., "Scheduling a production line to minimize tardiness," Research report 43, Management Science Research Project, University of California, Los Angeles, 1955.Google Scholar
  17. 17.
    Karp, R. M., "Reducibility among combinatorial problems," In: Miller, R. E., and Thatcher, J. W. (eds.), Complexity of computer computations," Plenum Press, New York, 1972.Google Scholar
  18. 18.
    Knuth, D. E., "The Art of Computer Programming Vol. 3: Sorting and Searching," Addison-Wesley, Reading, Mass., 1973.Google Scholar
  19. 19.
    Lang, T., "Interconnections between processors and memory modules using the shuffle-exchange network." IEEE Trans. on Computers, C-25, No. 5, May, 1976, pp. 496–503.Google Scholar
  20. 20.
    Lang, T. and Stone, H., "A shuffle exchange network with simplified control," IEEE Trans. on Computers, C-25, No. 1, January, 1976, pp. 55–65.MathSciNetCrossRefGoogle Scholar
  21. 21.
    Lawler, E. L., "Sequencing to minimize the weighted number of tardy jobs," Rev. Francaise Automat. Informat. Recherche Operationalle, 10.5, Suppl. 27–33, 1976.Google Scholar
  22. 22.
    Lenstra, J. K., "Sequencing by enumerative methods," Mathematical Centre Tract 69, Mathematisch Centrum, Amsterdam, 1977.MATHGoogle Scholar
  23. 23.
    Moore, J. M., "An n job, one machine sequencing algorithm for minimizing the number of late jobs," Management Sci. 15, pp. 102–109, 1968.MATHGoogle Scholar
  24. 24.
    Muller, D. E., and Preparata, F. P., "Bounds to complexities of networks for sorting and for switching," JACM, Vol. 22, No. 2, April 1975, pp. 195–201.MATHCrossRefMathSciNetGoogle Scholar
  25. 25.
    Munro, I. and Paterson, M., "Optimal algorithms for parallel polynomial evaluation," JCSS, Vol. 7, 1973, pp. 189–198.MATHMathSciNetGoogle Scholar
  26. 26.
    Nassimi, D. and Sahni, S., "Bitonic sort on a mesh-connected parallel computer," IEEE Trans. on Computers, C-28, No. 1, January 1979, pp. 2–7Google Scholar
  27. 27.
    Nassimi, D. and Sahni, S., "An optimal routing algorithm for mesh connected parallel computer," JACM 27, 1, pp. 6–29, 1980.MATHCrossRefMathSciNetGoogle Scholar
  28. 28.
    Nassimi, D. and Sahni, S., "Parallel permutation and sorting algorithms and a new generalized connection network," JACM, to appear.Google Scholar
  29. 29.
    Nassimi, D. and Sahni, S., "Data broadcasting in SIMD Computers," Proc. 1980 Int. Conf. on Parallel Processing, IEEE, to appear in IEEE Trans on computers.Google Scholar
  30. 30.
    Preparata, F. P., "New parallel-sorting schemes," IEEE Trans. on Computers, C-27, No. 7, July 1978, pp. 669–673.MathSciNetGoogle Scholar
  31. 31.
    Rinnooy, Kan, A. H. G., "Machine scheduling problems: classification, complexity, and computations," Nighoff, The Hague, 1976.Google Scholar
  32. 32.
    Savage, C., "Parallel algorithms for graph theoretic problems," Ph.D. Thesis, University of Illinois, Urbana, August 1978.Google Scholar
  33. 33.
    Siegal, H., "A model of SIMD machines and a comparison of various interconnection networks," Proc. IEEE Trans on Computers, C-28, 1979, pp. 907–917.Google Scholar
  34. 34.
    Sidney, J. B., "An extension of Moore's due date algorithm," In S. E. Elmagharaby (ed) 1973, Symp. on the Theory of Scheduling and its applications, Lecture Notes in Economics and Mathematical Systems, 86 Springer, Berlin, pp. 393–398, 1973.Google Scholar
  35. 35.
    Smith, W. E., "Various optimizers for single-stage production," Naval Res. Logist. Quart., Vol. 3, pp. 59–66, 1956.CrossRefMathSciNetGoogle Scholar
  36. 36.
    Stone, H., "Parallel processing with the perfect shuffle," IEEE Trans. on Computers, C-20, 1971, pp. 153–161.Google Scholar
  37. 37.
    Thompson, C. D., "Generalized connection networks for parallel processor interconnection," IEEE Trans. on Computers, C-27, No. 12, December, 1978, pp. 1119–1125.Google Scholar
  38. 38.
    Thompson, C. D., and Kung, H. T., "Sorting an a mesh connected parallel computer,"Google Scholar
  39. 39.
    Dekel, E. and Sahni, S., "Binary Trees and Parallel Schedualing Algorithms" University of Minnesota, technical Report 80-19.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1981

Authors and Affiliations

  • Eliezer Dekel
    • 1
  • Sartaj Sahni
    • 1
  1. 1.University of MinnesotaUSA

Personalised recommendations