Abstract
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\), 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.
Similar content being viewed by others
Notes
This is also known as speed scaling (cf. Yao et al. 1995).
This reduces our analysis to a smaller problem instance.
One could also consider resource requirements \({>}1\). However, the most natural extension of our model can easily be shown to reduce to non-unit size jobs with resource requirements \({\le }1\) (rescale jobs with resource requirement \(r>1\) and workload p such that it has resource requirement \(1/r \times r=1\) and workload \(r\times p\)).
References
Błażewicz, J., Ecker, K. H., & Pesch, E. (2007). Handbook on scheduling: From theory to applications. Berlin: Springer.
Błażewicz, J., Ecker, K. H., Pesch, E., Schmidt, G., & Weglarz, J. (2007). Handbook on scheduling—From theory to applications. International handbooks on information systems. Berlin: Springer.
Chung, F., Graham, R., Mao, J., & Varghese, G. (2006). Parallelism versus memory allocation in pipelined router forwarding engines. Theory of Computing Systems, 39(6), 829–849.
Epstein, L., Levin, A., & van Stee, R. (2012). Approximation schemes for packing splittable items with cardinality constraints. Algorithmica, 62(1–2), 102–129. doi:10.1007/s00453-010-9445-6.
Epstein, L., & van Stee, R. (2011). Improved results for a memory allocation problem. Theory of Computing Systems, 48(1), 79–92. doi:10.1007/s00224-009-9226-2.
Janiak, A., Janiak, W., & Lichtenstein, M. (2007). Resource management in machine scheduling problems: A survey. Decision Making in Manufacturing and Services, 1(12), 59–89.
Józefowska, J., Mika, M., Różycki, R., Waligóra, G., & Weglarz, J. (1999). Discrete–continuous scheduling to minimize the makespan for power processing rates of jobs. Discrete Applied Mathematics, 94(1), 263–285.
Józefowska, J., Mika, M., Różycki, R., Waligóra, G., & Weglarz, J. (2000). Solving the discrete–continuous project scheduling problem via its discretization. Mathematical Methods of Operations Research, 52(3), 489–499.
Józefowska, J., Mika, M., Różycki, R., Waligóra, G., & Weglarz, J. (2002). A heuristic approach to allocating the continuous resource in discrete–continuous scheduling problems to minimize the makespan. Journal of Scheduling, 5(6), 487–499.
Józefowska, J., & Weglarz, J. (1996). Discrete–continuous scheduling problems—Mean completion time results. European Journal of Operational Research, 94(2), 302–309.
Józefowska, J., & Weglarz, J. (1998). On a methodology for discrete–continuous scheduling. European Journal of Operational Research, 107(2), 338–353.
Kis, T. (2005). A branch-and-cut algorithm for scheduling of projects with variable-intensity activities. Mathematical Programming, 103(3), 515–539.
Leung, J. Y. T. (2004). Handbook of scheduling: Algorithms, models, and performance analysis. London: Chapman & Hall.
Różycki, R., Weglarz, J. (2011). Power-aware acheduling of preemptable jobs on identical parallel processors to minimize makespan. Annals of Operations Research. doi:10.1007/s10479-011-0957-5
Różycki, R., & Weglarz, J. (2012). Power-aware scheduling of preemptable jobs on identical parallel processors to meet deadlines. European Journal of Operational Research, 218(1), 68–75. doi:10.1016/j.ejor.2011.10.017.
Waligóra, G. (2011). Heuristic approaches to discrete–continuous project scheduling problems to minimize the makespan. Computational Optimization and Applications, 48(2), 399–421.
Weglarz, J., Józefowska, J., Mika, M., & Waligóra, G. (2011). Project scheduling with finite or infinite number of activity processing modes—A survey. European Journal of Operational Research, 208(3), 177–205.
Yao, F.F., Demers, A.J., Shenker, S. (1995). A scheduling model for reduced CPU energy. In: Proceedings of the 36th Annual Symposium on Foundations of Computer Science (FOCS), pp. 374–382.
Zhuravlev, S., Saez, J. C., Blagodurov, S., Fedorova, A., & Prieto, M. (2012). Survey of scheduling techniques for addressing shared resources in multicore processors. ACM Computing Surveys (CSUR), 45(1), 4:1–4:28. doi:10.1145/2379776.2379780.
Author information
Authors and Affiliations
Corresponding author
Additional information
Supported by the Federal Ministry of Education and Research (BMBF) under Grant 01IH13004 (Project “FAST”), by the German Research Foundation (DFG) within the Collaborative Research Center “On-The-Fly Computing” (SFB 901), by the Center of Excellence—ITI (Project P202/12/G061 of GA ČR), and by the Pacific Institute of Mathematical Sciences (PIMS).
Rights and permissions
About this article
Cite this article
Althaus, E., Brinkmann, A., Kling, P. et al. Scheduling shared continuous resources on many-cores. J Sched 21, 77–92 (2018). https://doi.org/10.1007/s10951-017-0518-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10951-017-0518-0