Efficient runtime slack management for EDF-VD-based mixed-criticality scheduling

https://doi.org/10.1016/j.sysarc.2021.102119Get rights and content

Abstract

Mixed-criticality system is an emerging design paradigm to improve the resource-efficiency for real-time embedded system. However, the traditional mixed-criticality system is commonly designed under pessimistic constraints on overrun handling and slack utilization. These solutions cannot provide efficient resource utilization when considering the dynamic behaviors of MC system. In this paper, we present an efficient slack management framework to improve the resource efficiency of mixed-criticality system. In this framework, the overrun can be handled in a demand-aware manner, and the dynamic slack is further integrated to improve resource efficiency. The low-criticality dropping is improved in a multiple-step manner to avoid sharp degradation. Random simulation and a case study are conducted to show that our framework outperforms the state-of-the-art resource management approaches.

Introduction

Nowadays it has become a trend that multiple software modules are integrated into a real-time embedded SoC system, especially for automotive and avionics. Different levels of criticality are assigned to software modules to denote their contribution to the system-level non-functional metrics such as reliability and safety. To model the system behavior of different criticality levels, mixed-criticality theory was first proposed by Vestal et al. [1] to schedule tasks without violation of non-functional requirements caused by the failed execution of higher-criticality-level modules. At the same time, the limited resource equipment of the embedded system leads to a fierce resource competition between modules. To improve system performance under the resource competition with non-functional requirements guaranteed, many solutions were proposed to optimize the original resource dispatching strategy in [1].

In two-level mixed-criticality theory, tasks in an embedded system are divided into groups with different levels of criticality and possess different priorities of accessing budget resources during the allocation stage and scheduled by EDF-VD [2]. However, there is a problem in such mixed-criticality theory that the resource allocation for lower-criticality tasks in the two-level system is so pessimistic during the resource allocation that they have to provide their budgets for higher-criticality tasks to match extra resource demands of the latter compulsively. After obtaining initial budgets, any exhaustion of budgets without signaling completion for high-criticality tasks will trigger a mode switch with budgets increasing directly from the initial amount to their WCET demands which rarely occurs in periodical executions. Such overestimation of resource allocation for high-criticality tasks causes the failure of low-criticality tasks and consequently a severe degradation of system performance. The severe performance degradation is catastrophic for those system in frequent interaction with surroundings, and thus urgently to be relieved.

To achieve relieved system performance, mixed-criticality system should dispatch resources in a more fine-grained manner. Concretely, two key problems as summarized below should be solved. First, the pessimistic worst-case budget of high-criticality tasks leads to few resources accessed by the low-criticality tasks periodically according to the rigid resource allocation. Second, the unused budget of each task is completely wasted after its completion despite many low-criticality tasks in hunger of resources. Currently, there is no robust solution to both problems together. Therefore, better strategies are in need to solve problems comprehensively and improve the system performance without violating the completion of high-criticality tasks.

In this paper, a resource management framework is proposed to further optimize the resource efficiency of mixed-criticality system. The multi-criticality-level system model in FMC-MST(flexible mixed-criticality model with multiple-shot transitions) [3] is adopted to provide a fine-grained strategy of transmitting resources between tasks of different criticality levels in a multi-shot manner to handle a mode switch. Based on the FMC-MST model, the management of runtime unused budgets (defined as slacks) is integrated into our resource management framework to make slacks with specific deadlines an alternative of resources for other tasks except for their own pre-allocated budgets, which improves the utilization of system resources and reduces the number of dropped tasks as much as possible. Furthermore, a strategy of dropping tasks without available resources in a multi-shot manner is designed after taking the potential generation of slacks into consideration to overcome the sharp degradation caused by the one-shot dropping in FMC-MST. After integrating schemes above into our framework, simulation based on randomly generated task sets and a case study of path tracking are conducted to show that our framework achieves better system performance than FMC-MST, which has been proved better than EDF-VD and FMC [4], with more system time units consumed efficiently and less low-criticality jobs dropped.

The main contribution of this paper is listed below:

  • A method of managing and dispatching runtime slack resources is proposed to improve system utilization.

  • A multiple-step dropping strategy is designed to increase the possibility of low-criticality completion.

  • The correctness of our slack management is formally proved by checking online schedulability.

  • The promotion of our resource management framework is illustrated by conducting simulation experiments and a case study.

The rest of this paper is organized as follows: Section 2 reviews related work in the literature. Section 3 recalls basic concepts in mixed-criticality theory. Section 4 introduces the method of managing and using online slack resources. Section 5 proves the system schedulability and analyzes the algorithm complexity. Section 6 conducts the evaluation of our method by the simulation of online scheduling and a case study. Section 7 draws a conclusion of this paper.

Section snippets

Related work

When it comes to the resource management of mixed-criticality system, many types of research are carried out based on the original work of Vestal et al. [1]. There are two major problems to be addressed in most work as optimal resource allocation strategies at the offline stage and dynamic resource adjustment at the online stage. Although different scheduling algorithms are also proposed for improvement of the system performance, EDF-VD and its optimized versions are still adopted as the

Background

In this section, we will recall basic concepts of a mixed-criticality system model, and define online slack resources in a multi-level system model.

Resource management framework

In this section, we will introduce the maintenance and consumption of dynamic slacks first. Then, we will introduce the system-level execution semantics and details in the scheduling process.

Verification

In this section, we will prove the correctness of using slack resources to guarantee the online system schedulability, and analyze the algorithm complexity of our resource management framework.

Evaluation

In this section, we conduct simulation experiments to evaluate the system performance of our method in terms of job-dropping ratio and runtime usage ratio. Then a case study, which combines our resource management framework with a mixed-criticality path-tracking application, is analyzed to demonstrate the feasibility of our method.

Conclusion

In this paper, a resource management framework for mixed-criticality system is proposed to improve the system resource utilization. By integrating the multiple-level system model, runtime slack management, and multiple-step task dropping into our resource management framework, low-criticality tasks are able to access alternative resources except for their own budgets to execute closer to their periodical demands with a higher possibility of signaling completion. Meanwhile, the system

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

Acknowledgment

This work has been partly funded by the National Natural Science Foundation of China(grant NO. 61872393, NO. 61902442, NO. 62072478), Key-Area Research and Development of Guangdong Province No. 2020B0101650001, the Shenzhen Basic Research Grants with No. JCYJ20180507182508857.

References (21)

  • S. Vestal, Preemptive scheduling of multi-criticality systems with varying degrees of execution time assurance, in:...
  • S. Baruah, V. Bonifaci, G. DAngelo, H. Li, A. Marchetti-Spaccamela, S. van der Ster, L. Stougie, The preemptive...
  • ChenG. et al.

    EDF-VD Scheduling of flexible mixed-criticality system with multiple-shot transitions

    IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst.

    (2018)
  • ChenG. et al.

    Utilization-based scheduling of flexible mixed-criticality real-time tasks

    IEEE Trans. Comput.

    (2018)
  • S.K. Baruah, A. Burns, R.I. Davis, Response-time analysis for mixed criticality systems, in: 2011 IEEE 32nd Real-Time...
  • A. Easwaran, Demand-based scheduling of mixed-criticality sporadic tasks on one processor, in: 2013 IEEE 34th Real-Time...
  • SuH. et al.

    Service guarantee exploration for mixed-criticality systems

  • GuX. et al.

    Resource efficient isolation mechanisms in mixed-criticality scheduling

  • RenJ. et al.

    Mixed-criticality scheduling on multiprocessors using task grouping

  • X. Gu, A. Easwaran, K. Phan, I. Shin, Resource efficient isolation mechanisms in mixed-criticality scheduling, in: 2015...
There are more references available in the full text version of this article.

Cited by (0)

View full text