427 research outputs found
ILP-based approaches to partitioning recurrent workloads upon heterogeneous multiprocessors
The problem of partitioning systems of independent constrained-deadline sporadic tasks upon heterogeneous multiprocessor platforms is considered. Several different integer linear program (ILP) formulations of this problem, offering different tradeoffs between effectiveness (as quantified by speedup bound) and running time efficiency, are presented
On the periodic behavior of real-time schedulers on identical multiprocessor platforms
This paper is proposing a general periodicity result concerning any
deterministic and memoryless scheduling algorithm (including
non-work-conserving algorithms), for any context, on identical multiprocessor
platforms. By context we mean the hardware architecture (uniprocessor,
multicore), as well as task constraints like critical sections, precedence
constraints, self-suspension, etc. Since the result is based only on the
releases and deadlines, it is independent from any other parameter. Note that
we do not claim that the given interval is minimal, but it is an upper bound
for any cycle of any feasible schedule provided by any deterministic and
memoryless scheduler
Schedulability analysis of global scheduling algorithms on multiprocessor platforms
This paper addresses the schedulability problem of periodic and sporadic real-time task sets with constrained deadlines preemptively scheduled on a multiprocessor platform composed by identical processors. We assume that a global work-conserving scheduler is used and migration from one processor to another is allowed during a task lifetime. First, a general method to derive schedulability conditions for multiprocessor real-time systems will be presented. The analysis will be applied to two typical scheduling algorithms: earliest deadline first (EDF) and fixed priority (FP). Then, the derived schedulability conditions will be tightened, refining the analysis with a simple and effective technique that significantly improves the percentage of accepted task sets. The effectiveness of the proposed test is shown through an extensive set of synthetic experiments
Schedulability analysis of global scheduling algorithms on multiprocessor platforms
This paper addresses the schedulability problem of periodic and sporadic real-time task sets with constrained deadlines preemptively scheduled on a multiprocessor platform composed by identical processors. We assume that a global work-conserving scheduler is used and migration from one processor to another is allowed during a task lifetime. First, a general method to derive schedulability conditions for multiprocessor real-time systems will be presented. The analysis will be applied to two typical scheduling algorithms: earliest deadline first (EDF) and fixed priority (FP). Then, the derived schedulability conditions will be tightened, refining the analysis with a simple and effective technique that significantly improves the percentage of accepted task sets. The effectiveness of the proposed test is shown through an extensive set of synthetic experiments
A C-DAG task model for scheduling complex real-time tasks on heterogeneous platforms: preemption matters
Recent commercial hardware platforms for embedded real-time systems feature
heterogeneous processing units and computing accelerators on the same
System-on-Chip. When designing complex real-time application for such
architectures, the designer needs to make a number of difficult choices: on
which processor should a certain task be implemented? Should a component be
implemented in parallel or sequentially? These choices may have a great impact
on feasibility, as the difference in the processor internal architectures
impact on the tasks' execution time and preemption cost. To help the designer
explore the wide space of design choices and tune the scheduling parameters, in
this paper we propose a novel real-time application model, called C-DAG,
specifically conceived for heterogeneous platforms. A C-DAG allows to specify
alternative implementations of the same component of an application for
different processing engines to be selected off-line, as well as conditional
branches to model if-then-else statements to be selected at run-time. We also
propose a schedulability analysis for the C-DAG model and a heuristic
allocation algorithm so that all deadlines are respected. Our analysis takes
into account the cost of preempting a task, which can be non-negligible on
certain processors. We demonstrate the effectiveness of our approach on a large
set of synthetic experiments by comparing with state of the art algorithms in
the literature
Resource-Efficient Scheduling Of Multiprocessor Mixed-Criticality Real-Time Systems
Timing guarantee is critical to ensure the correctness of embedded software systems that
interact with the physical environment. As modern embedded real-time systems evolves,
they face three challenges: resource constraints, mixed-criticality, and multiprocessors. This
dissertation focuses on resource-efficient scheduling techniques for mixed-criticality systems
on multiprocessor platforms.
While Mixed-Criticality (MC) scheduling has been extensively studied on uniprocessor plat-
forms, the problem on multiprocessor platforms has been largely open. Multiprocessor al-
gorithms are broadly classified into two categories: global and partitioned. Global schedul-
ing approaches use a global run-queue and migrate tasks among processors for improved
schedulability. Partitioned scheduling approaches use per processor run-queues and can
reduce preemption/migration overheads in real implementation. Existing global scheduling
schemes for MC systems have suffered from low schedulability. Our goal in the first work is
to improve the schedulability of MC scheduling algorithms. Inspired by the fluid scheduling
model in a regular (non-MC) domain, we have developed the MC-Fluid scheduling algo-
rithm that executes a task with criticality-dependent rates. We have evaluated MC-Fluid in
terms of the processor speedup factor: MC-Fluid is a multiprocessor MC scheduling algo-
rithm with a speed factor of 4/3, which is known to be optimal. In other words, MC-Fluid
can schedule any feasible mixed-criticality task system if each processor is sped up by a
factor of 4/3.
Although MC-Fluid is speedup-optimal, it is not directly implementable on multiprocessor
platforms of real processors due to the fractional processor assumption where multiple task
can be executed on one processor at the same time. In the second work, we have considered
the characteristic of a real processor (executing only one task at a time) and have developed
the MC-Discrete scheduling algorithm for regular (non-fluid) scheduling platforms. We have
shown that MC-Discrete is also speedup-optimal.
While our previous two works consider global scheduling approaches, our last work con-
siders partitioned scheduling approaches, which are widely used in practice because of low
implementation overheads. In addition to partitioned scheduling, the work consid-
ers the limitation of conventional MC scheduling algorithms that drops all low-criticality
tasks when violating a certain threshold of actual execution times. In practice, the system
designer wants to execute the tasks as much as possible. To address the issue, we have de-
veloped the MC-ADAPT scheduling framework under uniprocessor platforms to drop as few
low-criticality tasks as possible. Extending the framework with partitioned multiprocessor
platforms, we further reduce the dropping of low-criticality tasks by allowing migration of
low-criticality tasks at the moment of a criticality switch. We have evaluated the quality
of task dropping solution in terms of speedup factor. In existing work, the speedup factor
has been used to evaluate MC scheduling algorithms in terms of schedulability under the
worst-case scheduling scenario. In this work, we apply the speedup factor to evaluate MC
scheduling algorithms in terms of the quality of their task dropping solution under various
MC scheduling scenarios. We have derived that MC-ADAPT has a speedup factor of 1.618
for task dropping solution
- …