Competitive online scheduling of perfectly malleable jobs with setup times

Abstract We study how to efficiently schedule online perfectly malleable parallel jobs with arbitrary arrival times on m  ⩾ 2 processors. We take into account both the linear speedup of such jobs and their setup time, i.e., the time to create, dispatch, and destroy multiple processes. Specifically, we define the execution time of a job with length p j running on k j processors to be p j / k j  + ( k j  − 1) c , where c  > 0 is a constant setup time associated with each processor that is used to parallelize the computation. This formulation accurately models data parallelism in scientific computations and realistically asserts a relationship between job length and the maximum useful degree of parallelism. When the goal is to minimize makespan, we show that the online algorithm that simply assigns k j so that the execution time of each job is minimized and starts jobs as early as possible has competitive ratio 4( m  − 1)/ m for even m  ⩾ 2 and 4 m /( m  + 1) for odd m  ⩾ 3. This algorithm is much simpler than previous offline algorithms for scheduling malleable jobs that require more than a constant number of passes through the job list.

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

[2]  Anja Feldmann,et al.  Optimal online scheduling of parallel jobs with dependencies , 1993, STOC.

[3]  Joseph Y.-T. Leung,et al.  Complexity of Scheduling Parallel Task Systems , 1989, SIAM J. Discret. Math..

[4]  Denis Trystram,et al.  On-Line Scheduling of Parallelizable Jobs , 1998, Euro-Par.

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

[6]  Anja Feldmann,et al.  Optimal On-Line Scheduling of Parallel Jobs with Dependencies , 1998, J. Comb. Optim..

[7]  Uwe Schwiegelshohn,et al.  Theory and Practice in Parallel Job Scheduling , 1997, JSSPP.

[8]  Klaus Jansen,et al.  Scheduling Malleable Parallel Tasks: An Asymptotic Fully Polynomial Time Approximation Scheme , 2004, Algorithmica.

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

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

[11]  Jatinder N. D. Gupta,et al.  A review of scheduling research involving setup considerations , 1999 .

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

[13]  Bruce P. Lester The art of parallel programming , 1993 .

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

[15]  JESSEN T. HAVILL A COMPETITIVE ONLINE ALGORITHM FOR A PARALLEL JOB SCHEDULING PROBLEM , 2000 .

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

[17]  Kenneth C. Sevcik,et al.  Application Scheduling and Processor Allocation in Multiprogrammed Parallel Processing Systems , 1994, Perform. Evaluation.

[18]  Guochuan Zhang,et al.  On-Line Scheduling of Parallel Jobs , 2004, SIROCCO.

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

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

[21]  T. Mexia,et al.  Author ' s personal copy , 2009 .

[22]  György Turán,et al.  On the performance of on-line algorithms for partition problems , 1989, Acta Cybern..