Scheduling shared continuous resources on many-cores

We consider the problem of scheduling a number of jobs on m identical processors sharing a continuously divisible resource. Each job j comes with a resource requirement . The job can be processed at full speed if granted its full resource requirement. If receiving only an x-portion of $$r_j$$rj, it is processed at an x-fraction of the full speed. Our goal is to find a resource assignment that minimizes the makespan (i.e., the latest completion time). Variants of such problems, relating the resource assignment of jobs to their processing speeds, have been studied under the term discrete–continuous scheduling. Known results are either very pessimistic or heuristic in nature. In this article, we suggest and analyze a slightly simplified model. It focuses on the assignment of shared continuous resources to the processors. The job assignment to processors and the ordering of the jobs have already been fixed. It is shown that, even for unit size jobs, finding an optimal solution is NP-hard if the number of processors is part of the input. Positive results for unit size jobs include a polynomial-time algorithm for any constant number of processors. Since the running time is infeasible for practical purposes, we also provide more efficient algorithm variants: an optimal algorithm for two processors and a -approximation algorithm for m processors.

[1]  Grzegorz Waligóra,et al.  Discrete-continuous Scheduling to Minimize the Makespan for Power Processing Rates of Jobs , 1999, Discret. Appl. Math..

[2]  Grzegorz Waligóra Heuristic approaches to discrete-continuous project scheduling problems to minimize the makespan , 2011, Comput. Optim. Appl..

[3]  Manuel Prieto,et al.  Survey of scheduling techniques for addressing shared resources in multicore processors , 2012, CSUR.

[4]  F. Frances Yao,et al.  A scheduling model for reduced CPU energy , 1995, Proceedings of IEEE 36th Annual Foundations of Computer Science.

[5]  Jacques Carlier,et al.  Handbook of Scheduling - Algorithms, Models, and Performance Analysis , 2004 .

[6]  Jan Wȩglarz,et al.  Discrete-continuous scheduling problems — Mean completion time results , 1996 .

[7]  Grzegorz Waligóra,et al.  Solving the discrete-continuous project scheduling problem via its discretization , 2000, Math. Methods Oper. Res..

[8]  Jan Weglarz,et al.  Power-aware scheduling of preemptable jobs on identical parallel processors to meet deadlines , 2012, Eur. J. Oper. Res..

[9]  Adam Janiak,et al.  Resource Management in Machine Scheduling Problems: A Survey , 2007 .

[10]  Jacek Blazewicz,et al.  Handbook on Scheduling: Models and Methods for Advanced Planning (International Handbooks on Information Systems) , 2007 .

[11]  Jan Weglarz,et al.  Power-aware scheduling of preemptable jobs on identical parallel processors to minimize makespan , 2014, Ann. Oper. Res..

[12]  George Varghese,et al.  Parallelism versus Memory Allocation in Pipelined Router Forwarding Engines , 2004, SPAA '04.

[13]  Tamás Kis,et al.  A branch-and-cut algorithm for scheduling of projects with variable-intensity activities , 2005, Math. Program..

[14]  Jan Węglarz,et al.  On a methodology for discrete-continuous scheduling , 1998, Eur. J. Oper. Res..

[15]  Grzegorz Waligóra,et al.  A heuristic approach to allocating the continuous resource in discrete–continuous scheduling problems to minimize the makespan , 2002 .

[16]  Leah Epstein,et al.  Approximation Schemes for Packing Splittable Items with Cardinality Constraints , 2007, Algorithmica.

[17]  Jacek Blazewicz,et al.  Handbook on Scheduling: From Theory to Applications , 2014 .

[18]  L. Epstein,et al.  Improved Results for a Memory Allocation Problem , 2006, Theory of Computing Systems.

[19]  Grzegorz Waligóra,et al.  Project scheduling with finite or infinite number of activity processing modes - A survey , 2011, Eur. J. Oper. Res..