Abstract
We study the problem of assigning sporadic tasks to unrelated machines such that the tasks on each machine can be feasibly scheduled. Despite its importance for modern real-time systems, this problem has not been studied before. We present a polynomial-time algorithm which approximates the problem with a constant speedup factor of \(8+2\sqrt{6}\approx 12.9\) and show that any polynomial-time algorithm needs a speedup factor of at least \(2\), unless P \(=\) NP. In the case of a constant number of machines we give a polynomial-time approximation scheme. Key to these results are two new relaxations of the demand bound function, the function that yields a sufficient and necessary condition for a task system on a single machine to be feasible. In particular, we present new methods to approximate this function to obtain useful structural properties while incurring only bounded loss in the approximation quality. For the constant speedup result we employ a very general rounding procedure for linear programs (LPs) which model assignment problems with capacity-type constraints. It ensures that the cost of the rounded integral solution is no more than the cost of the optimal fractional LP solution and the capacity constraints are violated only by a bounded factor, depending on the structure of the matrix that defines the LP. In fact, our rounding scheme generalizes the well-known 2-approximation algorithm for the generalized assignment problem due to Shmoys and Tardos.
Similar content being viewed by others
References
Albers, K., Slomka, F.: An event stream driven approximation for the analysis of real-time systems. In: Proceedings of 16th Euromicro Conference on Real-Time Systems, pp. 187–195 (2004)
Anand, S., Garg, N., Megow, N.: Meeting deadlines: how much speed suffices? In: Aceto, L., Henzinger, M., Sgall, J. (eds.) Proceedings of 38th International Colloquium on Automata, Languages and Programming, Volume 6755 of Lecture Notes in Computer Science, pp. 232–243 (2011)
Andersson, B., Tovar, E.: Competitive analysis of partitioned scheduling on uniform multiprocessors. In: Proceedings of 21st International Parallel and Distributed Processing Symposium, pp. 1–8. IEEE (2007)
Asadpour, A., Feige, U., Saberi, A.: Santa Claus meets hypergraph matchings. In: Approximation, Randomization and Combinatorial Optimization: Algorithms and Techniques, Volume 5171 of Lecture Notes in Computer Science, pp. 10–20. Springer, Berlin (2008)
Awerbuch, B., Azar, Y., Grove, E.F., Kao, M.-Y., Krishnan, P., Vitter, J.S.: Load balancing in the \(L_p\) norm. In: Proceedings of 36th Symposium on Foundations of Computer Science, pp. 383–391. IEEE (1995)
Azar, Y., Epstein, A.: Convex programming for scheduling unrelated machines. In: Proceedings of 37th Symposium on Theory of Computing, pp. 331–337. ACM (2005)
Baker, T.P., Baruah, S.K.: Schedulability analysis of multiprocessor sporadic task systems. In: Handbook of Real-Time and Embedded Systems, chapter 3. CRC Press (2007)
Bansal, N., Sviridenko, M.: The Santa Claus problem. In: Proceedings of 38th Symposium on Theory of Computing, pp. 31–40. ACM, New York, NY, USA (2006)
Baruah, S., Fisher, N.: The partitioned multiprocessor scheduling of sporadic task systems. In: Proceedings of 26th IEEE Real-Time Systems Symposium, pp. 321–329. IEEE (2005)
Baruah, S., Mok, A., Rosier, L.: Preemptively scheduling hard-real-time sporadic tasks on one processor. In: Proceedings of 11th IEEE Real-Time Systems Symposium, pp. 182–190. IEEE (1990)
Baruah, S.K., Bonifaci, V., Marchetti-Spaccamela, A., Stiller, S.: Improved multiprocessor global schedulability analysis. Real-Time Syst. 46(1), 3–24 (2010)
Baruah, S.K., Pruhs, K.: Open problems in real-time scheduling. J. Sched. 13, 577–582 (2010)
Bonifaci, V., Marchetti-Spaccamela, A., Stiller, S.: A constant-approximate feasibility test for multiprocessor real-time scheduling. Algorithmica 62(3–4), 1034–1049 (2012)
Chakraborty, S., Künzli, S., Thiele, L.: Approximate schedulability analysis. In: Proceedings of 23rd IEEE Real-Time Systems Symposium, pp. 159–168. IEEE (2002)
Chen, J.-J., Chakraborty, S.: Resource augmentation bounds for approximate demand bound functions. In: Proceedings of 32nd IEEE Real-Time Systems Symposium, pp. 272–281. IEEE (2011)
Ebenlendr, T., Krčál, M., Sgall, J.: Graph balancing: a special case of scheduling unrelated parallel machines. In: Proceedings of 19th Symposium on Discrete Algorithms, pp. 483–490 (2008)
Eisenbrand, F., Rothvoß, T.: A PTAS for static priority real-time scheduling with resource augmentation. In: Aceto, L., Damgård, I., Halldórsson, M.M., Ingólfsdóttir, A., Walukiewicz, I. (eds.) Proceedings of 35th International Colloquium on Automata, Languages and Programming. Lecture Notes in Computer Science, vol. 5125, pp. 246–257. Springer, Berlin (2008)
Eisenbrand, F., Rothvoß, T.: EDF-schedulability of synchronous periodic task systems is coNP-hard. In: Proceedings of 21st Symposium on Discrete Algorithms, pp. 1029–1034 (2010)
Fisher, N., Baruah, S., Baker, T.P.: The partitioned scheduling of sporadic tasks according to static-priorities. In: Proceedings of 18th Euromicro Conference on Real-Time Systems, pp. 118–127 (2006)
Jansen, K., Porkolab, L.: Improved approximation schemes for scheduling unrelated parallel machines. In: Proceedings of 31st Symposium on Theory of Computing, pp. 408–417. ACM (1999)
Karloff, H.: Linear Programming. Birkhäuser, Basel (1991)
Karp, R.M.: Reducibility among combinatorial problems. Complex. Comput. Comput. 40, 85–103 (1972)
Karp, R.M., Leighton, F.T., Rivest, R.L., Thompson, C.D., Vazirani, U.V., Vazirani, V.V.: Global wire routing in two-dimensional arrays. Algorithmica 2, 113–129 (1987)
Anil Kumar, V.S., Marathe, M.V., Parthasarathy, S., Srinivasan, A.: Approximation algorithms for scheduling on multiple machines. In: Proceedings of 46th Symposium on Foundations of Computer Science, pp. 254–263. IEEE (2005)
Lau, L.C., Ravi, R., Singh, M.: Iterative Methods in Combinatorial Optimization. Cambridge University Press, Cambridge, MA (2011)
Lenstra, J.K., Shmoys, D.B., Tardos, É.: Approximation algorithms for scheduling unrelated parallel machines. Math. Program. 46(1–3), 259–271 (1990)
Liu, C., Layland, J.: Scheduling algorithms for multiprogramming in a hard real-time environment. J. ACM 20, 46–61 (1973)
Phillips, C.A., Stein, C., Torng, E., Wein, J.: Optimal time-critical scheduling via resource augmentation. Algorithmica 32, 163–200 (2002)
Raravi, G., Andersson, B., Bletsas, K.: Assigning real-time tasks on heterogeneous multiprocessors with two unrelated types of processors. Real-Time Syst. 49, 29–72 (2013)
Raravi, G., Nélis, V.: A PTAS for assigning sporadic tasks on two-type heterogeneous multiprocessors. In: Proceedings of 33rd IEEE Real-Time Systems Symposium, pp. 117–126. IEEE (2012)
Shmoys, D.B., Tardos, É.: An approximation algorithm for the generalized assignment problem. Math. Program. 62(1–3), 461–474 (1993)
Svensson, O.: Santa Claus schedules jobs on unrelated machines. J. Comput. 41(5), 1318–1341 (2012)
Wiese, A., Bonifaci, V., Baruah, S.: Partitioned EDF scheduling on a few types of unrelated multiprocessors. Real-Time Syst. 49(2), 219–238 (2013)
Williamson, D.P., Shmoys, D.B.: The Design of Approximation Algorithms. Cambridge University Press, Cambridge, MA (2011)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Marchetti-Spaccamela, A., Rutten, C., van der Ster, S. et al. Assigning sporadic tasks to unrelated machines. Math. Program. 152, 247–274 (2015). https://doi.org/10.1007/s10107-014-0786-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10107-014-0786-9
Keywords
- Scheduling
- Sporadic task systems
- Unrelated machines
- Demand bound function
- Integer linear programming
- Rounding