论文标题
lints^rt:用于嵌入式系统中智能调度的学习驱动测试床
LINTS^RT: A Learning-driven Testbed for Intelligent Scheduling in Embedded Systems
论文作者
论文摘要
由于在最新的嵌入式系统中的工作负载和硬件资源中看到的复杂性越来越大,因此开发有效的实时调度程序,相应的调度性测试变得相当具有挑战性。尽管可以在实践中支持简单的系统模型来实现接近最佳的可计划性能,但将任何小的复杂性元素添加到问题上下文中,例如非抢先或资源异质性将引起重大的悲观情绪,这可能不会被任何现有的调度技术消除。在本文中,我们介绍了一项基于学习的测试床,用于智能实时时间表,该测试床有可能处理实践中看到的各种复杂性。绒毛的设计从根本上是由Alphago Zero进行棋盘游戏进行的,并且特别解决了由于实时调度环境而引起的几个关键挑战。我们首先介绍了用于支持基本情况的干净设计:在同质的多处理器上安排零星的工作负载,然后演示如何轻松扩展框架以处理其他复杂性,例如非抢占和资源异质性。应用程序和OS级实现和评估都表明,与最常用的调度程序,Global EDF和RM相比,在不同设置下的lints^rt能够实现更高的运行时计划性。据我们所知,这项工作是设计和实施可扩展的基于学习的测试台的尝试,以自主做出实时调度决策。
Due to the increasing complexity seen in both workloads and hardware resources in state-of-the-art embedded systems, developing efficient real-time schedulers and the corresponding schedulability tests becomes rather challenging. Although close to optimal schedulability performance can be achieved for supporting simple system models in practice, adding any small complexity element into the problem context such as non-preemption or resource heterogeneity would cause significant pessimism, which may not be eliminated by any existing scheduling technique. In this paper, we present LINTS^RT, a learning-based testbed for intelligent real-time scheduling, which has the potential to handle various complexities seen in practice. The design of LINTS^RT is fundamentally motivated by AlphaGo Zero for playing the board game Go, and specifically addresses several critical challenges due to the real-time scheduling context. We first present a clean design of LINTS^RT for supporting the basic case: scheduling sporadic workloads on a homogeneous multiprocessor, and then demonstrate how to easily extend the framework to handle further complexities such as non-preemption and resource heterogeneity. Both application and OS-level implementation and evaluation demonstrate that LINTS^RT is able to achieve significantly higher runtime schedulability under different settings compared to perhaps the most commonly applied schedulers, global EDF, and RM. To our knowledge, this work is the first attempt to design and implement an extensible learning-based testbed for autonomously making real-time scheduling decisions.