3/2-Dual Approximation for CPU/GPU Scheduling

Authors Bernhard Sebastian Germann, Klaus Jansen , Felix Ohnesorge, Malte Tutas



PDF
Thumbnail PDF

File

LIPIcs.SEA.2024.13.pdf
  • Filesize: 1.25 MB
  • 18 pages

Document Identifiers

Author Details

Bernhard Sebastian Germann
  • Kiel University, Germany
Klaus Jansen
  • Kiel University, Germany
Felix Ohnesorge
  • Kiel University, Germany
Malte Tutas
  • Kiel University, Germany

Cite AsGet BibTex

Bernhard Sebastian Germann, Klaus Jansen, Felix Ohnesorge, and Malte Tutas. 3/2-Dual Approximation for CPU/GPU Scheduling. In 22nd International Symposium on Experimental Algorithms (SEA 2024). Leibniz International Proceedings in Informatics (LIPIcs), Volume 301, pp. 13:1-13:18, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2024)
https://doi.org/10.4230/LIPIcs.SEA.2024.13

Abstract

We present a fast and efficient 3/2 dual approximation algorithm for CPU/GPU scheduling under the objective of makespan minimization. In CPU/GPU scheduling tasks can be scheduled on two different architectures. When executed on the CPU, a task is moldable and can be assigned to multiple cores. The running time becomes a function in the assigned cores. On a GPU, the task is a classical job with a set processing time. Both settings have drawn recent independent scientific interest. For the moldable CPU scheduling, the current best known constant rate approximation is a 3/2 approximation algorithm [Wu et al. EJOR volume 306]. The best efficient algorithm for this setting is a 3/2+ε approximation [Mounie et al. SIAM '07] whereas GPU scheduling admits a 13/11 approximation [Coffman, Garey, Johnson SIAM'78]. We improve upon the current best known algorithms for CPU/GPU scheduling by Bleuse et al. by formulating a novel multidimensional multiple choice knapsack to allot tasks to either architecture and schedule them there with known algorithms. This yields an improved running time over the current state of the art. We complement our theoretical results with experimentation that shows a significant speedup by using practical optimizations and explore their efficacy.

Subject Classification

ACM Subject Classification
  • Theory of computation → Rounding techniques
  • Mathematics of computing → Discrete optimization
  • Theory of computation → Scheduling algorithms
Keywords
  • computing
  • machine scheduling
  • moldable
  • CPU/GPU

Metrics

  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    0
    PDF Downloads

References

  1. Raphaël Bleuse, Sascha Hunold, Safia Kedad-Sidhoum, Florence Monna, Gregory Mounie, and Denis Trystram. Scheduling independent moldable tasks on multi-cores with gpus. IEEE Trans. Parallel Distributed Syst., 28(9):2689-2702, 2017. URL: https://doi.org/10.1109/TPDS.2017.2675891.
  2. Raphaël Bleuse, Safia Kedad-Sidhoum, Florence Monna, Grégory Mounié, and Denis Trystram. Scheduling independent tasks on multi-cores with GPU accelerators. Concurr. Comput. Pract. Exp., 27(6):1625-1638, 2015. URL: https://doi.org/10.1002/CPE.3359.
  3. Maciej Drozdowski. On the complexity of multiprocessor task scheduling. Bulletin of The Polish Academy of Sciences-technical Sciences, 43:381-392, 1995. Google Scholar
  4. M. R. Garey and Ronald L. Graham. Bounds for multiprocessor scheduling with resource constraints. SIAM J. Comput., 4(2):187-200, 1975. URL: https://doi.org/10.1137/0204015.
  5. Bernhard Sebastian Germann, Klaus Jansen, Felix Ohnesorge, and Malte Tutas. Felioh/CPU-GPU-Scheduling. Software, DFG-Project JA 612/25-1, swhId: https://archive.softwareheritage.org/swh:1:dir:6b62fa88e3d3dde792b3c7a9803a04ef24651239;origin=https://github.com/Felioh/CPU-GPU-Scheduling;visit=swh:1:snp:86d753c617f3e52f02f4c34630793b756f0257df;anchor=swh:1:rev:e82b1d14e1a3a1dce87fd2d4974a6f8ac855c13a (visited on 2024-07-01). URL: https://github.com/Felioh/CPU-GPU-Scheduling.
  6. Kilian Grage, Klaus Jansen, and Felix Ohnesorge. Improved algorithms for monotone moldable job scheduling using compression and convolution. In José Cano, Marios D. Dikaiakos, George A. Papadopoulos, Miquel Pericàs, and Rizos Sakellariou, editors, Euro-Par 2023: Parallel Processing - 29th International Conference on Parallel and Distributed Computing, Limassol, Cyprus, August 28 - September 1, 2023, Proceedings, volume 14100 of Lecture Notes in Computer Science, pages 503-517. Springer, 2023. URL: https://doi.org/10.1007/978-3-031-39698-4.
  7. Ronald L. Graham. Bounds on multiprocessing timing anomalies. SIAM Journal of Applied Mathematics, 17(2):416-429, 1969. Google Scholar
  8. Dorit S. Hochbaum and David B. Shmoys. Using dual approximation algorithms for scheduling problems theoretical and practical results. J. ACM, 34(1):144-162, 1987. URL: https://doi.org/10.1145/7531.7535.
  9. Klaus Jansen. An EPTAS for scheduling jobs on uniform processors: Using an MILP relaxation with a constant number of integral variables. In ICALP (1), volume 5555 of Lecture Notes in Computer Science, pages 562-573. Springer, 2009. Google Scholar
  10. Klaus Jansen and Felix Land. Scheduling monotone moldable jobs in linear time. In 2018 IEEE International Parallel and Distributed Processing Symposium, IPDPS 2018, Vancouver, BC, Canada, May 21-25, 2018, pages 172-181. IEEE Computer Society, 2018. URL: https://doi.org/10.1109/IPDPS.2018.00027.
  11. Klaus Jansen, Felix Land, and Kati Land. Bounding the running time of algorithms for scheduling and packing problems. SIAM J. Discret. Math., 30(1):343-366, 2016. URL: https://doi.org/10.1137/140952636.
  12. Klaus Jansen and Ralf Thöle. Approximation algorithms for scheduling parallel jobs. SIAM J. Comput., 39(8):3571-3615, 2010. Google Scholar
  13. Edward G. Coffman Jr., M. R. Garey, and David S. Johnson. An application of bin-packing to multiprocessor scheduling. SIAM J. Comput., 7(1):1-17, 1978. Google Scholar
  14. Hans Kellerer, Ulrich Pferschy, and David Pisinger. Knapsack problems. Springer, 2004. URL: https://doi.org/10.1007/978-3-540-24777-7.
  15. Jan Karel Lenstra and David B. Shmoys. Elements of scheduling. CoRR, abs/2001.06005, 2020. URL: https://arxiv.org/abs/2001.06005.
  16. Walter Ludwig and Prasoon Tiwari. Scheduling malleable and nonmalleable parallel tasks. In Daniel Dominic Sleator, editor, Proceedings of the Fifth Annual ACM-SIAM Symposium on Discrete Algorithms. 23-25 January 1994, Arlington, Virginia, USA, pages 167-176. ACM/SIAM, 1994. URL: http://dl.acm.org/citation.cfm?id=314464.314491.
  17. Gregory Mounie, Christophe Rapine, and Denis Trystram. A 3/2-approximation algorithm for scheduling independent monotonic malleable tasks. SIAM J. Comput., 37(2):401-412, 2007. URL: https://doi.org/10.1137/S0097539701385995.
  18. John Turek, Joel L. Wolf, and Philip S. Yu. Approximate algorithms scheduling parallelizable tasks. In Lawrence Snyder, editor, Proceedings of the 4th Annual ACM Symposium on Parallel Algorithms and Architectures, SPAA '92, San Diego, CA, USA, June 29 - July 1, 1992, pages 323-332. ACM, 1992. URL: https://doi.org/10.1145/140901.141909.
  19. Fangfang Wu, Xiandong Zhang, and Bo Chen. An improved approximation algorithm for scheduling monotonic moldable tasks. Eur. J. Oper. Res., 306(2):567-578, 2023. Google Scholar