Table of Contents
Fetching ...

Global Scheduling of Weakly-Hard Real-Time Tasks using Job-Level Priority Classes

V. Gabriel Moyano, Zain A. H. Hammadeh, Selma Saidi, Daniel Lüdtke

TL;DR

A global job-level fixed priority scheduling algorithm together with its schedulability analysis to extend the state-of-the-art of scheduling weakly-hard real-time tasks to multi-core platforms and shows that the schedulability ratio is improved.

Abstract

Real-time systems are intrinsic components of many pivotal applications, such as self-driving vehicles, aerospace and defense systems. The trend in these applications is to incorporate multiple tasks onto fewer, more powerful hardware platforms, e.g., multi-core systems, mainly for reducing cost and power consumption. Many real-time tasks, like control tasks, can tolerate occasional deadline misses due to robust algorithms. These tasks can be modeled using the weakly-hard model. Literature shows that leveraging the weakly-hard model can relax the over-provisioning associated with designed real-time systems. However, a wide-range of the research focuses on single-core platforms. Therefore, we strive to extend the state-of-the-art of scheduling weakly-hard real-time tasks to multi-core platforms. We present a global job-level fixed priority scheduling algorithm together with its schedulability analysis. The scheduling algorithm leverages the tolerable continuous deadline misses to assigning priorities to jobs. The proposed analysis extends the Response Time Analysis (RTA) for global scheduling to test the schedulability of tasks. Hence, our analysis scales with the number of tasks and number of cores because, unlike literature, it depends neither on Integer Linear Programming nor reachability trees. Schedulability analyses show that the schedulability ratio is improved by 40% comparing to the global Rate Monotonic (RM) scheduling and up to 60% more than the global EDF scheduling, which are the state-of-the-art schedulers on the RTEMS real-time operating system. Our evaluation on industrial embedded multi-core platform running RTEMS shows that the scheduling overhead of our proposal does not exceed 60 Nanosecond.

Global Scheduling of Weakly-Hard Real-Time Tasks using Job-Level Priority Classes

TL;DR

A global job-level fixed priority scheduling algorithm together with its schedulability analysis to extend the state-of-the-art of scheduling weakly-hard real-time tasks to multi-core platforms and shows that the schedulability ratio is improved.

Abstract

Real-time systems are intrinsic components of many pivotal applications, such as self-driving vehicles, aerospace and defense systems. The trend in these applications is to incorporate multiple tasks onto fewer, more powerful hardware platforms, e.g., multi-core systems, mainly for reducing cost and power consumption. Many real-time tasks, like control tasks, can tolerate occasional deadline misses due to robust algorithms. These tasks can be modeled using the weakly-hard model. Literature shows that leveraging the weakly-hard model can relax the over-provisioning associated with designed real-time systems. However, a wide-range of the research focuses on single-core platforms. Therefore, we strive to extend the state-of-the-art of scheduling weakly-hard real-time tasks to multi-core platforms. We present a global job-level fixed priority scheduling algorithm together with its schedulability analysis. The scheduling algorithm leverages the tolerable continuous deadline misses to assigning priorities to jobs. The proposed analysis extends the Response Time Analysis (RTA) for global scheduling to test the schedulability of tasks. Hence, our analysis scales with the number of tasks and number of cores because, unlike literature, it depends neither on Integer Linear Programming nor reachability trees. Schedulability analyses show that the schedulability ratio is improved by 40% comparing to the global Rate Monotonic (RM) scheduling and up to 60% more than the global EDF scheduling, which are the state-of-the-art schedulers on the RTEMS real-time operating system. Our evaluation on industrial embedded multi-core platform running RTEMS shows that the scheduling overhead of our proposal does not exceed 60 Nanosecond.
Paper Structure (20 sections, 12 theorems, 33 equations, 16 figures, 4 tables, 3 algorithms)

This paper contains 20 sections, 12 theorems, 33 equations, 16 figures, 4 tables, 3 algorithms.

Key Result

Lemma 1

If $m_i / K_i < 0.5$, then $w_i = 1$. If $m_i / K_i \geq 0.5$, then $h_i = 1$.

Figures (16)

  • Figure 1: CALLISTO project.
  • Figure 2: Types of jobs within a time interval $L$ as proposed in RTA bertogna2007response. Blue arrows represent task activation, while red ones represent deadlines. Gray boxes refer to job executions.
  • Figure 3: Critical-sequence examples for a high-tolerance task (above) and a low-tolerance task (below). Gray boxes refer to execution finishing before the deadline, i.e., deadline hit. Boxes in pink refer to deadline miss.
  • Figure 4: Priority assignment for tasks in Table \ref{['tab:example-tasks']}. Solid circles represent the highest priority for each task, thus, each task has only one solid circle. Note that jobs of $\tau_1$ may get the highest priority among all possible priorities (9) and the lowest possible priority (1).
  • Figure 5: Job-classes transitions for low-tolerance and high-tolerance tasks. Solid circles represent the highest priority, hence, jobs which are assigned to the priority represented by the solid circle are guaranteed to meet their deadlines.
  • ...and 11 more figures

Theorems & Definitions (37)

  • Definition 1
  • Definition 2
  • Definition 3
  • Definition 4
  • Definition 5
  • Definition 6
  • Definition 7
  • Definition 8: $w_i$
  • Definition 9: $h_i$
  • Lemma 1
  • ...and 27 more