Directed acyclic graph (DAG) tasks are currently adopted in the real-time domain to model complex applications from the automotive, avionics, and industrial domains that implement their functionalities through chains of intercommunicating tasks. This paper studies the problem of scheduling real-time DAG tasks by presenting a novel schedulability test based on the concept of trivial schedulability. Using this schedulability test, we propose a new DAG scheduling framework (edge generation scheduling -- EGS) that attempts to minimize the DAG width by iteratively generating edges while guaranteeing the deadline constraint. We study how to efficiently solve the problem of generating edges by developing a deep reinforcement learning algorithm combined with a graph representation neural network to learn an efficient edge generation policy for EGS. We evaluate the effectiveness of the proposed algorithm by comparing it with state-of-the-art DAG scheduling heuristics and an optimal mixed-integer linear programming baseline. Experimental results show that the proposed algorithm outperforms the state-of-the-art by requiring fewer processors to schedule the same DAG tasks. The code is available at https://github.com/binqi-sun/egs.
翻译:有向无环图(DAG)任务当前被实时系统领域广泛采用,用于建模汽车、航空电子和工业领域中通过任务间通信链实现复杂功能的应用程序。本文通过提出一种基于平凡可调度性概念的创新可调度性测试,研究了实时DAG任务的调度问题。基于此可调度性测试,我们提出了一种新的DAG调度框架(边生成调度——EGS),该框架通过迭代生成边来最小化DAG宽度,同时保证截止时间约束。我们研究如何高效求解边生成问题,通过开发一种结合图表示神经网络的深度强化学习算法,为EGS学习高效的边生成策略。通过将所提算法与最先进的DAG调度启发式算法及最优混合整数线性规划基线进行对比,我们评估了该算法的有效性。实验结果表明,所提算法在调度相同DAG任务时所需处理器数量更少,优于现有最先进方法。相关代码已开源至 https://github.com/binqi-sun/egs。