Skip to main content
Log in

An ILP representation of a DAG scheduling problem

  • Published:
Real-Time Systems Aims and scope Submit manuscript

Abstract

The use of integer linear programs for solving complex real-time scheduling problems is investigated. The problem of scheduling a workload represented as a directed acyclic graph (DAG) upon a dedicated multiprocessor platform is considered, in which each individual vertex of the DAG is assigned to a specific processor and the entire DAG is required to complete execution within a specified duration. A representation of this scheduling problem as a zero-one integer linear program is obtained. Some guidelines are proposed for identifying scheduling problems amenable to solution by converting to integer linear programs.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4

Similar content being viewed by others

Notes

  1. We point out that RASP is not only a decision problem in the sense that for instances determined to be schedulable, we seek to additionally determine a correct schedule. We will see that our algorithm for solving the decision version of RASP is constructive in that it shows schedulability by actually generating a schedule.

  2. See (Cormen et al. 2009, p. 1063) for a rigorous textbook description of such verification algorithms.

  3. We reiterate that the processors are assumed to be preemptive: it is not required that the job \(v_i\) execute throughout the duration \([s_i, f_i]\). Rather, \(s_i\) denotes the first instant at which the job begins to execute, and \(f_i\), the last instant at which it does so.

  4. We emphasize that these jobs may be considered as being independent: precedence constraints between them are separately represented by constraints of the form given in Expression 3 above.

  5. Note that although Expression 5 appears to already be in linear-constraint form, it is not quite so since it is only defined for some values of i and j—those for which \(s_i\le f_j\). But since the \(s_i\) and the \(f_j\) values are variables, we cannot a priori determine for which values of i and j constraints of the form Expression 5 need to be written—this will be determined by the values that get assigned to the \(s_i\)’s and the \(f_j\)’s in any solution to the ILP that we are constructing.

  6. A subtle error in this reasoning was pointed out by Ben-Amor (2021, Appendix A): while we desire that \(x_{ij}=1\) if \(s_i\le s_j\) and \(y_{ij}=1\) if \(f_i\le f_j\), these inequalities allow for the possibility that \(x_{ij}=0\) (\(y_{ij}=0\), respectively) when \(s_i=s_j\) (\(f_i=f_j\), resp.). Ben-Amor describes a simple and elegant fix using the absolute value function that is available on standard ILP solvers.

References

  • Baker K, Bertrand J (1982) A dynamic priority rule for scheduling against due-dates. J Oper Manag 3:37–42

    Article  Google Scholar 

  • Baker KR, Trietsch D (2009) Principles of sequencing and scheduling. Wiley Publishing, New York

    Book  Google Scholar 

  • Baruah S (2020a) Scheduling DAGs when processor assignments are specified. In: Proceedings of the twenty-fifth international conference on real-time and network systems, RTNS ’20, New York, NY, USA. ACM

  • Baruah S (2020b) Work in progress: the ILP-tractability of schedulability analysis problems. In: Work in progress (WiP) session of the IEEE real-time systems symposium

  • Baruah S, Mok A, Rosier L (1990) Preemptively scheduling hard-real-time sporadic tasks on one processor. In: Proceedings of the 11th real-time systems symposium, pp. 182–190. Orlando, Florida. IEEE Computer Society Press

  • Baruah S, Bonifaci V, Marchetti-Spaccamela A (2015) The global EDF scheduling of systems of conditional sporadic DAG tasks. In: Proceedings of the 2014 26th Euromicro conference on real-time systems, ECRTS ’15, pp 222–231, Lund (Sweden). IEEE Computer Society Press

  • Ben-Amor S (2021) Multicore scheduling of dependent tasks with probabilistic execution times. PhD thesis, Sorbonne Université

  • Ben-Amor S, Cucu-Grosjean L, Maxim D (2019) Worst-case response time analysis for partitioned fixed-priority DAG tasks on identical processors. In: 24th IEEE international conference on emerging technologies and factory automation, ETFA 2019, Zaragoza, Spain, September 10–13, 2019, pp 1423–1426. IEEE

  • Bertogna M (2019) A view on future challenges for the real-time community. https://www.irit.fr/rtns2019/wp-content/uploads/2019/11/bertogna_keynote.pdf, Keynote talk at the 27th International Conference on Networks and Systems, Toulouse, France

  • Cook S (1971) The complexity of theorem-proving procedures. In: Proceedings of the 3rd annual ACM symposium on the theory of computing, pp 151–158

  • Cormen TH, Leiserson CE, Rivest RL, Stein C (2009) Introduction to algorithms, 3rd edn. MIT Press, New York

    MATH  Google Scholar 

  • Garey M, Johnson D (1979) Computers and intractability : a guide to the theory of NP-completeness. W. H. Freeman and company, NewYork

    MATH  Google Scholar 

  • Graham R (1966) Bounds for certain multiprocessing anomalies. Bell Syst Techn J 45:1563–1581

    Article  Google Scholar 

  • Houssam-Eddine Z, Capodieci N, Cavicchioli R, Lipari G (2020) The HPC-DAG task model for heterogeneous real-time systems. IEEE Trans Comput

  • Jansen K (1994) Analysis of scheduling problems with typed task systems. Discret Appl Math 52(3):223–232

    Article  MathSciNet  Google Scholar 

  • Karp R (1972) Reducibility among combinatorial problems. In: Miller R, Thatcher J (eds) Complexity of computer computations. Plenum Press, New York, pp 85–103

    Chapter  Google Scholar 

  • Marchetti-Spaccamela A, Megow N, Schlöter J, Skutella M, Stougie L (2020) On the complexity of conditional DAG scheduling in multiprocessor systems. In: IEEE International Parallel and Distributed Processing Symposium (IPDPS)

  • Melani A, Bertogna M, Bonifaci V, Marchetti-Spaccamela A, Buttazzo G (2015) Response-time analysis of conditional DAG tasks in multiprocessor systems. In: Proceedings of the 2014 26th Euromicro Conference on Real-Time Systems, ECRTS ’15, pp 222–231, Lund (Sweden). IEEE Computer Society Press

  • Ullman J (1975) NP-complete scheduling problems. J Comput Syst Sci 10(3):384–393

    Article  MathSciNet  Google Scholar 

Download references

Funding

Funded was provided by National Science Foundation Grants CNS-1814739 and CPS-1932530.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sanjoy Baruah.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Baruah, S. An ILP representation of a DAG scheduling problem. Real-Time Syst 58, 85–102 (2022). https://doi.org/10.1007/s11241-021-09370-7

Download citation

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11241-021-09370-7

Keywords

Navigation