Abstract
In malleable job scheduling, jobs can be executed simultaneously on multiple machines with the processing time depending on the number of allocated machines. In this setting, jobs are required to be executed non-preemptively and in unison, in the sense that they occupy, during their execution, the same time interval over all the machines of the allocated set. In this work, we study generalizations of malleable job scheduling inspired by standard scheduling on unrelated machines. Specifically, we introduce a general model of malleable job scheduling, where each machine has a (possibly different) speed for each job, and the processing time of a job j on a set of allocated machines S depends on the total speed of S with respect to j. For machines with unrelated speeds, we show that the optimal makespan cannot be approximated within a factor less than \(\frac{e}{e-1}\), unless \(P = NP\). On the positive side, we present polynomial-time algorithms with approximation ratios \(\frac{2e}{e-1}\) for machines with unrelated speeds, 3 for machines with uniform speeds, and 7/3 for restricted assignments on identical machines. Our algorithms are based on deterministic LP rounding. They result in sparse schedules, in the sense that each machine shares at most one job with other machines. We also prove lower bounds on the integrality gap of \(1+\varphi \) for unrelated speeds (\(\varphi \) is the golden ratio) and 2 for uniform speeds and restricted assignments. To indicate the generality of our approach, we show that it also yields constant factor approximation algorithms for a variant where we determine the effective speed of a set of allocated machines based on the \(L_p\) norm of their speeds.
Similar content being viewed by others
Notes
Malleable scheduling also appears as moldable, while sometimes the two terms refer to slightly different models.
We denote by \({\mathbb {R}}_+\) (resp. \({\mathbb {Z}}_+\)) the set of non-negative reals (resp. integers).
This property holds w.l.o.g., as the system always has the choice not to use some of the allocated machines.
For convenience, we use the identifier \(f_j\) for both functions. Since their arguments come from disjoint domains, it is always clear from the context which one is meant.
Note that the minimizer of this expression coincides with the unique solution of \(\beta ^{-1}+1 = \frac{e^{\frac{1}{\beta } - 1}}{\beta (e^{\frac{1}{\beta } - 1} - 1)}\) in the interval [0, 1].
References
Amdahl, G. M. (2007). Validity of the single processor approach to achieving large scale computing capabilities. IEEE Solid-State Circuits Society Newsletter, 12(3), 19–20.
Blazewicz, J., Kovalyov, M. Y., Machowiak, M., Trystram, D., & Weglarz, J. (2006). Preemptable malleable task scheduling problem. IEEE Transactions on Computers, 55(4), 486–490.
Brent, R. P. (1974). The parallel evaluation of general arithmetic expressions. Journal of the ACM (JACM), 21(2), 201–206.
Correa, J., Marchetti-Spaccamela, A., Matuschke, J., Stougie, L., Svensson, O., Verdugo, V., & Verschae, J. (2015). Strong LP formulations for scheduling splittable jobs on unrelated machines. Mathematical Programming, 154(1–2), 305–328.
Du, J., & Leung, J. (1989). Complexity of scheduling parallel task systems. SIAM Journal on Discrete Mathematics, 2(4), 473–487.
Dutot, P., Mounié, G., & Trystram, D. (2004). Scheduling parallel tasks: Approximation algorithms. In J. T. Leung (Ed.), Handbook of scheduling: Algorithms, models, and performance analysis, chapter 26 (pp. 26–1–26–24). CRC Press.
Feige, U. (1998). A threshold of ln \(n\) for approximating set cover. Journal of the ACM (JACM), 45(4), 634–652.
Feige, U., & Kilian, J. (1998). Zero knowledge and the chromatic number. Journal of Computer and System Sciences, 57(2), 187–199.
Garey, M., & Graham, R. (1975). Bounds for multiprocessor scheduling with resource constraints. SIAM Journal on Computing, 4(2), 187–200.
Graham, R. (1969). Bounds on multiprocessing timing anomalies. SIAM Journal on Applied Mathematics, 17(2), 416–429.
Hall, L. A., Schulz, A. S., Shmoys, D. B., & Wein, J. (1997). Scheduling to minimize average completion time: Off-line and on-line approximation algorithms. Mathematics of Operations Research, 22(3), 513–544.
Hanen, C., & Munier, A. (2001). An approximation algorithm for scheduling dependent tasks on m processors with small communication delays. Discrete Applied Mathematics, 108(3), 239–257.
Hochbaum, D. S., & Shmoys, D. B. (1985). Using dual approximation algorithms for scheduling problems: Theoretical and practical results. In 26th annual symposium on foundations of computer science, FOCS ’85, pp. 79–89.
Jansen, K., & Land, F. (2018). 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, pp. 172–181.
Jansen, K., & Porkolab, L. (2002). Linear-time approximation schemes for scheduling malleable parallel tasks. Algorithmica, 32(3), 507–520.
Jansen, K., & Thöle, R. (2010). Approximation algorithms for scheduling parallel jobs. SIAM Journal on Computing, 39(8), 3571–3615.
Jansen, K., & Zhang, H. (2006). An approximation algorithm for scheduling malleable tasks under general precedence constraints. ACM Transactions on Algorithms (TALG), 2(3), 416–434.
Lenstra, J. K., Shmoys, D. B., & Tardos, É. (1990). Approximation algorithms for scheduling unrelated parallel machines. Mathematical Programming, 46(1), 259–271.
Makarychev, K., & Panigrahi, D. (2014). Precedence-constrained scheduling of malleable jobs with preemption. In Automata, languages, and programming—41st international colloquium, ICALP 2014, Copenhagen, Denmark, July 8–11, 2014, Proceedings, Part I, pp. 823–834.
Mounié, G., Rapine, C., & Trystram, D. (1999). Efficient approximation algorithms for scheduling malleable tasks. In Proceedings of the eleventh annual ACM symposium on parallel algorithms and architectures, SPAA ’99, Saint-Malo, France, June 27–30, 1999, pp. 23–32.
Mounie, G., Rapine, C., & Trystram, D. (2007). A 3/2-approximation algorithm for scheduling independent monotonic malleable tasks. SIAM Journal on Computing, 37(2), 401–412.
Papadimitriou, C. H., & Yannakakis, M. (1990). Towards an architecture-independent analysis of parallel algorithms. SIAM Journal on Computing, 19(2), 322–328.
Patterson, D. A., & Hennessy, J. L. (2013). Computer organization and design, fifth edition: The hardware/software interface (5th ed.). Morgan Kaufmann Publishers Inc.
Rayward-Smith, V. J. (1987). UET scheduling with unit interprocessor communication delays. Discrete Applied Mathematics, 18(1), 55–71.
Srinivasa Prasanna, G. N., & Musicus, B. R. (1991). Generalised multiprocessor scheduling using optimal control. In Proceedings of the third annual ACM symposium on parallel algorithms and architectures, ACM, New York, NY, USA, SPAA ’91, pp. 216–228.
Turek, J., Wolf, J. L., & Yu, P. S. (1992). Approximate algorithms scheduling parallelizable tasks. In Proceedings of the fourth annual ACM symposium on parallel algorithms and architectures, ACM, New York, NY, USA, SPAA ’92, pp. 323–332.
Acknowledgements
Part of this work was carried out while the authors participated in the program “Real-Time Decision Making” at the Simons Institute for the Theory of Computing, Berkeley, CA. Part of this work was carried out while the second author worked at Technische Universität München and was supported by the Alexander von Humboldt Foundation with funds of the German Federal Ministry of Education and Research (BMBF).
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Appendix
Appendix
1.1 A slight improvement by optimizing the threshold
Recall that in both algorithms for the unrelated machines case, the threshold for deciding whether a job j is assigned to p(j) or to T(j) is set to 1/2. While this is the optimal choice for the simple 4-approximate rounding scheme, we can achieve a slightly better bound for our improved algorithm by optimizing this threshold accordingly. Let \(\beta \in (0,1)\) be the threshold such that a job j is assigned to p(j) when \(x_{p(j),j} \ge \beta \), or to the set T(j), when \(\sum _{i \in T(j)} x_{i,j} > 1 - \beta \). Formally, let \({{\,\mathrm{{\mathcal {J}}}\,}}^{(1)} := \{j \in {{\,\mathrm{{\mathcal {J}}}\,}}{{\,\mathrm{\,|\,}\,}}x_{p(j),j} \ge \beta \}\) be the set of jobs that are assigned to their parent machines and \({{\,\mathrm{{\mathcal {J}}}\,}}^{(2)} := {{\,\mathrm{{\mathcal {J}}}\,}}\setminus {{\,\mathrm{{\mathcal {J}}}\,}}^{(1)}\) the rest of the jobs. For \(j \in {{\,\mathrm{{\mathcal {J}}}\,}}^{(2)}\) and \(\theta \in [0, 1]\) define \(S_j(\theta ) := \{ i \in T(j) {{\,\mathrm{\,|\,}\,}}1 - \frac{\ell _i}{C} \ge \theta \}\). Choose \(\theta _j\) so as to minimize \(2(1 - \theta _j)C + f_j(S_j(\theta _j))\) (note that this minimizer can be determined by trying out at most |T(j)| different values for \(\theta _j\)). We then assign each job in \(j \in J^{(2)}\) to the machine set \(S_j(\theta _j)\).
Recall that for any \(i \in {{\,\mathrm{{\mathcal {M}}}\,}}\) there is at most one \(j \in J^{(2)}\) with \(i \in T(j)\). If \(i \notin S_j(\theta _j)\), then load of machine i is bounded by \(\frac{1}{\beta } \ell _i \le \frac{1}{\beta } C\), where \(\ell _i\) as defined in Sect. 3.1. If \(i \in S_j(\theta _j)\), then the load of machine i is bounded by
where the inequality comes from the fact that \(1 - \frac{\ell _{i'}}{C} \ge \theta _j\) for all \(i' \in S_{\theta _j}\).
We now fix \(\beta \) to be the unique solution of \(\beta ^{-1}+1 = \frac{e^{\frac{1}{\beta } - 1}}{\beta (e^{\frac{1}{\beta } - 1} - 1)}\) in the interval [0, 1]. The following proposition gives an upper bound on the RHS of (4) as a result of our filtering technique.
Proposition 12
For each \(j \in {{\,\mathrm{{\mathcal {J}}}\,}}^{(2)}\), there is a \(\theta \in [0,1]\) with \(\beta ^{-1}(1- \theta )C + f_j(S_j(\theta )) \le \frac{e^{\frac{1}{\beta } - 1}}{\beta (e^{\frac{1}{\beta } - 1} - 1)}C\).
Proof
We first assume that for all \(i \in T(j)\), it is the case that \(s_{i,j} \le \gamma _j\) and, thus, \(r_{i,j} = \gamma _j\). In the opposite case, where there exists some \(i' \in T(j)\) such that \(s_{i,j} > \gamma _j\), by choosing \(\theta = 0\), then (4) can be upper bounded by \(\beta ^{-1}C + f_j(S_j(0)) = \beta ^{-1}C + f_j(T(j)) \le \left( \beta ^{-1}+1\right) C\). In that case, the proposition follows directly by the fact that \(\beta ^{-1}+1 = \frac{e^{\frac{1}{\beta } - 1}}{\beta (e^{\frac{1}{\beta } - 1} - 1)}\), by our choice of \(\beta \).
Define \(\alpha := \frac{e^{\frac{1}{\beta } - 1}}{\beta (e^{\frac{1}{\beta } - 1} - 1)}\). We show that there is a \(\theta \in [0, 1]\) with \(\sigma _j(S_j(\theta )) \ge \frac{\gamma _j f_j(\gamma _j)}{(\alpha + \beta ^{-1} \theta -\beta ^{-1})C}\). Then \(f_j(S_j(\theta )) \le (\alpha + \beta ^{-1} \theta -\beta ^{-1}) C\) by Fact 5, implying the lemma.
Define the function \(g: [0,1] \rightarrow {\mathbb {R}}_{+}\) by \(g(\theta ) := \sigma _j (S_j(\theta ))\). It is easy to see g is non-increasing integrable and that
Now assume by contradiction that \(g(\theta ) < \frac{\gamma _j f_j(\gamma _j)}{(\alpha + \beta ^{-1} \theta - \beta ^{-1})C}\) for all \(\theta \in [0, 1]\). Note that \(\ell _i + \frac{\gamma _j f_j(\gamma _j)}{s_{i,j}} x_{i,j} \le C\) for every \(i \in T(j)\) by constraints (2). Hence \(\frac{f_j(\gamma _j)\gamma _j}{C} x_{i,j} \le s_{i,j}(1 - \frac{\ell _i}{C})\) for all \(i \in T(j)\). Summing over all \(i \in T(j)\) and using the fact that \(\sum _{i \in T(j)} x_{i,j} \ge 1 - \beta \) because \(j \in J^{(2)}\), we get
where the last inequality uses the assumption that \(g(\theta ) < \frac{\gamma _j f_j(\gamma _j)}{(\alpha + \beta ^{-1} \theta _j - \beta ^{-1})C}\) for all \(\theta \in [0,1]\). By simplifying the above inequality, we get the contradiction
\(\square \)
Therefore, by choosing \(\alpha = \inf _{\beta \in (0,1)} \{ \frac{e^{\frac{1}{\beta } - 1}}{\beta (e^{\frac{1}{\beta } - 1} - 1)} \} \approx 3.14619\)Footnote 5, with threshold \(\beta \approx 0.465941\), we can prove the following theorem.
Theorem 12
There exists a polynomial-time 3.1461-approximation algorithm for the problem of scheduling malleable jobs on unrelated machines.
Rights and permissions
About this article
Cite this article
Fotakis, D., Matuschke, J. & Papadigenopoulos, O. Malleable scheduling beyond identical machines. J Sched 26, 425–442 (2023). https://doi.org/10.1007/s10951-022-00733-x
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10951-022-00733-x