An effective approximation algorithm for the Malleable Parallel Task Scheduling problem

The Malleable Parallel Task Scheduling problem (MPTS) is an extension of one of the most classic scheduling problems ([email protected]?C"m"a"x). The only difference is that for MPTS, each task can be processed simultaneously by more than one processor. Such flexibility could dramatically reduce the makespan, but greatly increase the difficulty for solving the problem. By carefully analyzing some existing algorithms for MPTS, we find each of them suitable for some specific cases, but none is effective enough for all cases. Based on such observations, we introduce some optimization algorithms and improving techniques for MPTS, with their performance analyzed in theory. Combining these optimization algorithms and improving techniques gives rise to our novel scheduling algorithm OCM (Optimizations Combined for MPTS), a 2-approximation algorithm for MPTS. Extensive simulations on random datasets and SPLASH-2 benchmark reveal that for all cases, schedules produced by OCM have smaller makespans, compared with other existing algorithms.

[1]  Jianer Chen,et al.  General Multiprocessor Task Scheduling , 1999 .

[2]  Éva Tardos,et al.  Algorithm design , 2005 .

[3]  Weizhen Mao,et al.  Competitive online scheduling of perfectly malleable jobs with setup times , 2008, Eur. J. Oper. Res..

[4]  Anoop Gupta,et al.  The SPLASH-2 programs: characterization and methodological considerations , 1995, ISCA.

[5]  Ronald L. Graham,et al.  Bounds on Multiprocessing Timing Anomalies , 1969, SIAM Journal of Applied Mathematics.

[6]  G. N. Srinivasa Prasanna,et al.  Generalised multiprocessor scheduling using optimal control , 1991, SPAA '91.

[7]  Prasoon Tiwari,et al.  Scheduling malleable and nonmalleable parallel tasks , 1994, SODA '94.

[8]  Jacek Blazewicz,et al.  Scheduling Malleable Tasks on Parallel Processors to Minimize the Makespan , 2004, Ann. Oper. Res..

[9]  Kam-Hoi Cheng,et al.  A Heuristic of Scheduling Parallel Tasks and its Analysis , 1992, SIAM J. Comput..

[10]  Jacek Blazewicz,et al.  Approximation Algorithms for Scheduling Independent Malleable Tasks , 2001, Euro-Par.

[11]  Denis Trystram,et al.  Efficient approximation algorithms for scheduling malleable tasks , 1999, SPAA '99.

[12]  Jacek Blazewicz,et al.  Scheduling Multiprocessor Tasks to Minimize Schedule Length , 1986, IEEE Transactions on Computers.

[13]  Ronald L. Graham,et al.  Bounds for certain multiprocessing anomalies , 1966 .

[14]  Klaus Jansen,et al.  Scheduling Malleable Parallel Tasks: An Asymptotic Fully Polynomial-Time Approximation Scheme , 2002, ESA.

[15]  Kam-Hoi Cheng,et al.  List Scheduling of Parallel Tasks , 1991, Inf. Process. Lett..

[16]  Klaus Jansen,et al.  Approximation Algorithms for Scheduling Parallel Jobs: Breaking the Approximation Ratio of 2 , 2008, ICALP.

[17]  Robert E. Tarjan,et al.  Performance Bounds for Level-Oriented Two-Dimensional Packing Algorithms , 1980, SIAM J. Comput..

[18]  Denis Trystram,et al.  A 3/2-Approximation Algorithm for Scheduling Independent Monotonic Malleable Tasks , 2007, SIAM J. Comput..

[19]  Prithviraj Banerjee,et al.  An Approximate Algorithm for the Partitionable Independent Task Scheduling Problem , 1990, ICPP.

[20]  Ronald L. Rivest,et al.  Orthogonal Packings in Two Dimensions , 1980, SIAM J. Comput..

[21]  Andrea Lodi,et al.  Two-dimensional packing problems: A survey , 2002, Eur. J. Oper. Res..

[22]  David B. Shmoys,et al.  Using dual approximation algorithms for scheduling problems: Theoretical and practical results , 1985, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985).

[23]  Klaus Jansen,et al.  Computing optimal preemptive schedules for parallel tasks: linear programming approaches , 2003, Math. Program..

[24]  Joseph Y.-T. Leung,et al.  Handbook of Scheduling: Algorithms, Models, and Performance Analysis , 2004 .

[25]  P. Cochat,et al.  Et al , 2008, Archives de pediatrie : organe officiel de la Societe francaise de pediatrie.

[26]  Anja Feldmann,et al.  Dynamic scheduling on parallel machines , 1991, [1991] Proceedings 32nd Annual Symposium of Foundations of Computer Science.

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

[28]  Philip S. Yu,et al.  Approximate algorithms scheduling parallelizable tasks , 1992, SPAA '92.

[29]  Klaus Jansen,et al.  Linear-Time Approximation Schemes for Scheduling Malleable Parallel Tasks , 1999, SODA '99.

[30]  Jan Węglarz,et al.  Project Scheduling with Continuously-Divisible, Doubly Constrained Resources , 1981 .

[31]  Ronald L. Graham,et al.  Bounds for Multiprocessor Scheduling with Resource Constraints , 1975, SIAM J. Comput..

[32]  Jacek Blazewicz,et al.  Preemptable malleable task scheduling problem , 2006, IEEE Transactions on Computers.

[33]  A. Steinberg,et al.  A Strip-Packing Algorithm with Absolute Performance Bound 2 , 1997, SIAM J. Comput..

[34]  Kemal Efe,et al.  Optimal Scheduling of Compute-Intensive Tasks on a Network of Workstations , 1995, IEEE Trans. Parallel Distributed Syst..

[35]  Leslie A. Hall,et al.  Approximation algorithms for scheduling , 1996 .

[36]  G. Amdhal,et al.  Validity of the single processor approach to achieving large scale computing capabilities , 1967, AFIPS '67 (Spring).

[37]  Daniel Dominic Sleator,et al.  A 2.5 Times Optimal Algorithm for Packing in Two Dimensions , 1980, Inf. Process. Lett..

[38]  Claire Mathieu,et al.  A Near-Optimal Solution to a Two-Dimensional Cutting Stock Problem , 2000, Math. Oper. Res..

[39]  Ramesh Krishnamurti An Approximation Algorithm for Scheduling Tasks on Varying Partition Sizes in Partitionable Multiprocessor Systems , 1992, IEEE Trans. Computers.

[40]  Klaus Jansen,et al.  A fast \frac52-approximation algorithm for hierarchical scheduling , 2010 .

[41]  Evripidis Bampis,et al.  Scheduling Independent Multiprocessor Tasks , 1997, ESA.