Job scheduling in rings

We give distributed approximation algorithms for job scheduling in a ring architecture. In contrast to almost all other parallel scheduling models, the model we consider captures the influence of the underlying communications network by specifying that task migration from one processor to another takes time proportional to the distance between those two processors in the network. As a result, our algorithms must balance both computational load and communication time. The algorithms are simple, require no global control, and work in a variety of settings. All come with small constant-factor approximation guarantees; the basic algorithm yields schedules of length at most 4.22 times optimal. We also give a lower bound on the performance of any distributed algorithm some results for a simple capacitated case, and the results of simulation experiments, which give better results than our worst-case analysis.

[1]  Yishay Mansour,et al.  Sorting on a Ring of Processors , 1990, J. Algorithms.

[2]  F. Leighton,et al.  Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes , 1991 .

[3]  Wonyong Sung,et al.  Multiprocessor implementation of recursive least squares algorithms using a parallel block processing method , 1991, 1991., IEEE International Sympoisum on Circuits and Systems.

[4]  Hajime Kanada Construction of a distributed computer network containing ring connections , 1993, Systems and Computers in Japan.

[5]  Laxmi N. Bhuyan,et al.  Approximate Analysis of Single and Multiple Ring Networks , 1989, IEEE Trans. Computers.

[6]  Edith Schonberg,et al.  Low-overhead scheduling of nested parallelism , 1991, IBM J. Res. Dev..

[7]  Thomas H. Payne,et al.  Parallel Sorting in a Ring Network of Processors , 1989, IEEE Trans. Computers.

[8]  James B. Rothnie Kendall Square Research Introduction to the KSR1 , 1992, Supercomputer.

[9]  Maurice Herlihy,et al.  Low contention load balancing on large-scale multiprocessors , 1992, SPAA '92.

[10]  Hyeong-Ah Choi,et al.  A message-routing strategy for multicomputer systems , 1992, Networks.

[11]  D. Hutchinson Local Area Network Architectures , 1988 .

[12]  CONSTANTINE D. POLYCHRONOPOULOS,et al.  Guided Self-Scheduling: A Practical Scheduling Scheme for Parallel Supercomputers , 1987, IEEE Transactions on Computers.

[13]  Cynthia A. Phillips,et al.  Task Scheduling in Networks (Extended Abstract) , 1994, SWAT.

[14]  Sanjit K. Mitra,et al.  Mapping locally recursive SEGs upon a multiprocessor system in a ring network , 1992, [1992] Proceedings of the International Conference on Application Specific Array Processors.

[15]  Eugene L. Lawler,et al.  Sequencing and scheduling: algorithms and complexity , 1989 .

[16]  E T. Leighton,et al.  Introduction to parallel algorithms and architectures , 1991 .

[17]  Bruce M. Maggs,et al.  Approximate load balancing on dynamic and asynchronous networks , 1993, STOC.

[18]  Edith Schonberg,et al.  Factoring: a practical and robust method for scheduling parallel loops , 1991, Proceedings of the 1991 ACM/IEEE Conference on Supercomputing (Supercomputing '91).

[19]  Baruch Awerbuch,et al.  Competitive distributed job scheduling (extended abstract) , 1992, STOC '92.

[20]  Edith Schonberg,et al.  Factoring: a method for scheduling parallel loops , 1992 .

[21]  Atsushi Iwata,et al.  A ring array processor architecture for highly parallel dynamic time warping , 1986, IEEE Trans. Acoust. Speech Signal Process..

[22]  Xiaotie Deng,et al.  Deterministic load balancing in computer networks , 1990, Proceedings of the Second IEEE Symposium on Parallel and Distributed Processing 1990.