# Binary trees and parallel scheduling algorithms

Parallelism Of Numerical Algorithms

First Online:

## Abstract

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

Unable to display preview. Download preview PDF.

## References

- 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.Arjomandi, E., "A study of parallelism in graph theory," Ph.D. thesis, Computer Science department, University of Toronto, December 1975.Google Scholar
- 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.Batcher, K. E., "Sorting networks and their applications," Proc. AFIPS 1968 SJCC, Vol. 32., AFIPS Press, Montvale, NJ, pp. 307–314.Google Scholar
- 5.Batcher, K. E., "MPP-a massively parallel processor," Proc. 1979 Int. Conf. on Parallel Procesing, IEEE, p 249, 1979Google Scholar
- 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.Brent, R. P., "The parallel evaluation of general arithmetic expressions," JACM, Vol. 21, No. 2, April, 1974, pp. 201–206.MATHCrossRefMathSciNetGoogle Scholar
- 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.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.Dekel, E. and Sahni, S., "Parallel scheduling algorithms," University of Minnesota, Technical Report, TR 81-1, 1981.Google Scholar
- 11.Eckstein, D., "Parallel graph processing using depth-first search and breadth first search," Ph.D. Thesis, University of Iowa, 1977.Google Scholar
- 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.Hirschberg, D. S., "Fast parallel sorting algorithms," CACM, Vol. 21, No. 8, August 1978, pp. 657–661.MATHMathSciNetGoogle Scholar
- 14.Horn, W. A., "Some simple scheduling algorithms," Naval Res. Logist. Quart., Vol. 21, pp. 177–185, 1974.MATHCrossRefMathSciNetGoogle Scholar
- 15.Horowitz, E. and Sahni, S., "Fundamentals of computer algorithms," Computer Science Press, Potomac, MD, 1978.MATHGoogle Scholar
- 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.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.Knuth, D. E., "The Art of Computer Programming Vol. 3: Sorting and Searching," Addison-Wesley, Reading, Mass., 1973.Google Scholar
- 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.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.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.Lenstra, J. K., "Sequencing by enumerative methods," Mathematical Centre Tract 69, Mathematisch Centrum, Amsterdam, 1977.MATHGoogle Scholar
- 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.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.Munro, I. and Paterson, M., "Optimal algorithms for parallel polynomial evaluation," JCSS, Vol. 7, 1973, pp. 189–198.MATHMathSciNetGoogle Scholar
- 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.Nassimi, D. and Sahni, S., "An optimal routing algorithm for mesh connected parallel computer," JACM 27, 1, pp. 6–29, 1980.MATHCrossRefMathSciNetGoogle Scholar
- 28.Nassimi, D. and Sahni, S., "Parallel permutation and sorting algorithms and a new generalized connection network," JACM, to appear.Google Scholar
- 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.Preparata, F. P., "New parallel-sorting schemes," IEEE Trans. on Computers, C-27, No. 7, July 1978, pp. 669–673.MathSciNetGoogle Scholar
- 31.Rinnooy, Kan, A. H. G., "Machine scheduling problems: classification, complexity, and computations," Nighoff, The Hague, 1976.Google Scholar
- 32.Savage, C., "Parallel algorithms for graph theoretic problems," Ph.D. Thesis, University of Illinois, Urbana, August 1978.Google Scholar
- 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.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.Smith, W. E., "Various optimizers for single-stage production," Naval Res. Logist. Quart., Vol. 3, pp. 59–66, 1956.CrossRefMathSciNetGoogle Scholar
- 36.Stone, H., "Parallel processing with the perfect shuffle," IEEE Trans. on Computers, C-20, 1971, pp. 153–161.Google Scholar
- 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.Thompson, C. D., and Kung, H. T., "Sorting an a mesh connected parallel computer,"Google Scholar
- 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