Efficiently Scheduling Parallel DAG Tasks on Identical Multiprocessors.
Ref: CISTER-TR-241002 Publication Date: 23, Oct, 2024
Efficiently Scheduling Parallel DAG Tasks on Identical Multiprocessors.
Ref: CISTER-TR-241002 Publication Date: 23, Oct, 2024Abstract:
Parallel real-time embedded applications can be modelled as directed acyclic graphs (DAGs) whose nodes model subtasks and whose edges model precedence constraints among subtasks. Efficiently scheduling such parallel tasks can be challenging in itself, particularly in hard real-time systems where it must be ensured offline that the deadlines of the parallel applications will be met at run time. In this paper, we tackle the problem of scheduling DAG tasks on identical multiprocessor systems efficiently, in terms of processor utilisation. We propose a new algorithm that attempts to use dedicated processor clusters for high-utilisation tasks, as in federated scheduling, but is also capable of reclaiming the processing capacity lost to fragmentation, by splitting the execution of parallel tasks over different existing clusters, in a manner inspired by semi-partitioned C=D scheduling (originally devised for non-parallel tasks). In the experiments with synthetic DAG task sets, our Segmented-Flattened-and-Split scheduling approach achieves a significantly higher scheduling success ratio than federated scheduling.
Document:
DOI:https://doi.org/10.48550/arXiv.2410.17563.
Notes: Version submitted to RTNS 2024.
Record Date: 23, Oct, 2024