Real-time gang schedulings with workload models for parallel computers

Gang scheduling has been shown to be an effective job scheduling policy for parallel computers that combines elements of space sharing and time sharing. We propose new policies to enable gang scheduling to adapt to environments with real-time constraints. Our work, to our best knowledge, is the first work to attempt to address the real-time aspects of gang scheduling. Our system guided by a metric, called "task utilization workload", can schedule both real-time and non-real-time tasks at the same time. We report simulation results with a family of scheduling algorithms based on our proposed metric. Our scheme is designed to be a practical scheme to be used for large scale industrial and commercial parallel systems. Preliminary simulation results also show that our proposed policy is an effective scheme to perform real-time scheduling, while scheduling non-real-time jobs with fairness and good throughput.

[1]  Larry Rudolph,et al.  Gang Scheduling Performance Benefits for Fine-Grain Synchronization , 1992, J. Parallel Distributed Comput..

[2]  E.L. Lawler,et al.  Optimization and Approximation in Deterministic Sequencing and Scheduling: a Survey , 1977 .

[3]  Gerd Finke,et al.  Minimizing Mean Weighted Execution Time Loss on Identical and Uniform Processors , 1987, Inf. Process. Lett..

[4]  Vipin Kumar,et al.  ScalParC: a new scalable and efficient parallel classification algorithm for mining large datasets , 1998, Proceedings of the First Merged International Parallel Processing Symposium and Symposium on Parallel and Distributed Processing.

[5]  Sanjeev Setia Trace-driven analysis of migration-based gang scheduling policies for parallel computers , 1997, Proceedings of the 1997 International Conference on Parallel Processing (Cat. No.97TB100162).

[6]  Barbara M. Chapman,et al.  Supercompilers for parallel and vector computers , 1990, ACM Press frontier series.

[7]  Michael Wolfe,et al.  High performance compilers for parallel computing , 1995 .

[8]  Guy L. Steele,et al.  The High Performance Fortran Handbook , 1993 .

[9]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[10]  Dennis Gannon,et al.  Distributed pC++ Basic Ideas for an Object Parallel Language , 1993, Sci. Program..

[11]  Jong Kim,et al.  Real-time job scheduling in hypercube systems , 1997, Proceedings of the 1997 International Conference on Parallel Processing (Cat. No.97TB100162).

[12]  J. Blaswicz Selected topics in scheduling theory , 1987 .

[13]  Wei-Kuan Shih,et al.  On-Line Scheduling of Imprecise Computations to Minimize Error , 1996, SIAM J. Comput..

[14]  Jack Dongarra,et al.  PVM: Parallel virtual machine: a users' guide and tutorial for networked parallel computing , 1995 .

[15]  Larry Rudolph,et al.  Distributed hierarchical control for parallel processing , 1990, Computer.

[16]  Wei Kuan Shih,et al.  Algorithms for Scheduling Imprecise Computations with Timing Constraints , 1991, SIAM J. Comput..

[17]  Jenq Kuen Lee,et al.  Object oriented parallel programming: experiments and results , 1991, Proceedings of the 1991 ACM/IEEE Conference on Supercomputing (Supercomputing '91).

[18]  Alok N. Choudhary,et al.  High performance data mining using data cubes on parallel computers , 1998, Proceedings of the First Merged International Parallel Processing Symposium and Symposium on Parallel and Distributed Processing.

[19]  Jenq Kuen Lee,et al.  Parallel Array Object I/O Support on Distributed Environments , 1997, J. Parallel Distributed Comput..

[20]  Jenq Kuen Lee,et al.  Data distribution analysis and optimization for Pointer-based distributed programs , 1997, Proceedings of the 1997 International Conference on Parallel Processing (Cat. No.97TB100162).

[21]  Jenq Kuen Lee,et al.  An array operation synthesis scheme to optimize Fortran 90 programs , 1995, PPOPP '95.