Scheduling shared continuous resources on many-cores

  • Ernst Althaus
  • André Brinkmann
  • Peter Kling
  • Friedhelm Meyer auf der Heide
  • Lars Nagel
  • Sören Riechers
  • Jiří Sgall
  • Tim Süß
Article

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 Open image in new window. 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 Open image in new window-approximation algorithm for m processors.

Keywords

Scheduling Approximation algorithms Resources 

References

  1. Błażewicz, J., Ecker, K. H., & Pesch, E. (2007). Handbook on scheduling: From theory to applications. Berlin: Springer.Google Scholar
  2. 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.Google Scholar
  3. 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.CrossRefGoogle Scholar
  4. 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.CrossRefGoogle Scholar
  5. 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.CrossRefGoogle Scholar
  6. 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.Google Scholar
  7. 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.CrossRefGoogle Scholar
  8. 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.CrossRefGoogle Scholar
  9. 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.CrossRefGoogle Scholar
  10. Józefowska, J., & Weglarz, J. (1996). Discrete–continuous scheduling problems—Mean completion time results. European Journal of Operational Research, 94(2), 302–309.CrossRefGoogle Scholar
  11. Józefowska, J., & Weglarz, J. (1998). On a methodology for discrete–continuous scheduling. European Journal of Operational Research, 107(2), 338–353.CrossRefGoogle Scholar
  12. Kis, T. (2005). A branch-and-cut algorithm for scheduling of projects with variable-intensity activities. Mathematical Programming, 103(3), 515–539.CrossRefGoogle Scholar
  13. Leung, J. Y. T. (2004). Handbook of scheduling: Algorithms, models, and performance analysis. London: Chapman & Hall.Google Scholar
  14. 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
  15. 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.CrossRefGoogle Scholar
  16. Waligóra, G. (2011). Heuristic approaches to discrete–continuous project scheduling problems to minimize the makespan. Computational Optimization and Applications, 48(2), 399–421.CrossRefGoogle Scholar
  17. 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.CrossRefGoogle Scholar
  18. 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.Google Scholar
  19. 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.CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media New York 2017

Authors and Affiliations

  • Ernst Althaus
    • 1
  • André Brinkmann
    • 2
  • Peter Kling
    • 3
  • Friedhelm Meyer auf der Heide
    • 4
  • Lars Nagel
    • 2
  • Sören Riechers
    • 4
  • Jiří Sgall
    • 5
  • Tim Süß
    • 2
  1. 1.Computer Science InstituteJohannes Gutenberg-Universität MainzMainzGermany
  2. 2.Zentrum für DatenverarbeitungJohannes Gutenberg-Universität MainzMainzGermany
  3. 3.School of Computing ScienceSimon Fraser UniversityBurnabyCanada
  4. 4.Heinz Nixdorf Institute and Computer Science DepartmentPaderborn UniversityPaderbornGermany
  5. 5.Computer Science InstituteCharles UniversityPragueCzech Republic

Personalised recommendations