A model is considered for representing recurrent precedence-constrained tasks that are to execute on multiprocessor platforms. A recurrent task is specified as a directed acyclic graph (DAG), a period, and a relative deadline. Each vertex of the DAG represents a sequential job, while the edges of the DAG represent precedence constraints between these jobs. All the jobs of the DAG are released simultaneously and need to complete execution within the specified relative deadline of their release. Each task may release jobs in this manner an unbounded number of times, with successive releases occurring at least the specified period apart. Conditional control structures are also allowed. The scheduling problem is to determine whether a set of such recurrent tasks can be scheduled to always meet all deadlines upon a specified number of identical processors. This problem is shown to be computationally intractable, but amenable to efficient approximate solutions. Earliest Deadline First (EDF) and Deadline Monotonic (DM) are shown to be good approximate global scheduling algorithms. Polynomial and pseudo-polynomial time schedulability tests, of differing effectiveness, are presented for determining whether a given task set can be scheduled by EDF or DM to always meet deadlines on a specified number of processors.

Additional Metadata
Keywords Approximation algorithm, Conditional control-flow, Directed acyclic graph, Multiprocessor platform, Precedence constraints, Schedulability test
Persistent URL dx.doi.org/10.1145/3322809
Journal ACM Transactions on Parallel Computing
Citation
Bonifaci, V, Wiese, A, Baruah, S.K, Marchetti Spaccamela, A, Stiller, S, & Stougie, L. (2019). A generalized parallel task model for recurrent real-time processes. ACM Transactions on Parallel Computing, 6(1). doi:10.1145/3322809