Global Multiprocessor Scheduling of Aperiodic Tasks using
Time-Independent Priorities
Lars Lundberg and Håkan Lennerstad
Department of Software Engineering and Computer Science,
Blekinge Institute of Technology, S-372 25 Ronneby, Sweden
{Lars.Lundberg,Hakan.Lennerstad}@bth.se
Abstract
We provide a constant time schedulability test for a
multiprocessor server handling aperiodic tasks. Dhall´s
effect is avoided by dividing the tasks in two priority
classes based on task utilization: heavy and light. We
prove that if the load on the multiprocessor server stays
below % 425 . 35 7 3 ≈ − =
threshold
U , the server can
accept incoming aperiodic tasks and guarantee that the
deadlines of all accepted tasks will be met. 35.425% utili-
zation is also a threshold for a task to be characterized as
heavy.
The bound % 425 . 35 7 3 ≈ − =
threshold
U is easy-to-
use, but not sharp if we know the number of processors in
the multiprocessor. For a server with m processors, we
calculate a formula for the sharp bound U
threshold
(m), which
converges to
threshold
U from above as . ∞ → m
The results are based on a utilization function u
m
(x) =
. / ) 2 2 2 /( ) 1 ( 2 m x x x + + + − By using this function, the
performance of the multiprocessor can in some cases be
improved beyond U
threshold
(m) by paying the extra overhead
of monitoring the individual utilization of the current
tasks.
1. Introduction
Many real-time services are implemented as multi-
processors that handle a number of incoming aperiodic
tasks. To guarantee certain response times for aperiodic
tasks, we reject tasks that may not be able to meet their
response times or could jeopardize the response time of
other tasks. Previous results by Abdelzaher and Lu [1]
provide a constant time schedulability test that can be
used in admission control in uni-processors. The priority
assigned to each aperiodic task is time independent, mean-
ing that a certain task, with a certain relative deadline, will
get the same priority independently when it arrives. This
result was later generalized to global (non-partitioned)
multiprocessor scheduling by Abdelzaher et al. [2]. The
multiprocessor generalization is, however, restricted to a
very limited type of tasks called liquid tasks.
Previous results on global multiprocessor scheduling
of periodic tasks show that the deadline monotonic prior-
ity assignment scheme may lead to missed deadlines even
if the multiprocessor utilization is very low. The reason
for this is the so-called Dhall´s effect [5]. By assuming
liquid task sets this problem is removed since liquid task
sets do not suffer from Dhall´s effect, and the deadline
monotonic priority assignment scheme is in fact optimal
for such task sets. For more realistic task sets one must,
however, consider Dhall´s effect. The state-of-the-art
technique for doing priority assignment in such cases (for
periodic tasks) is an algorithm developed initially by
Andersson and Jonsson [4], and then improved by
Lundberg [7]. Based on the task utilizations, this priority
assignment algorithm groups tasks into two categories:
light tasks and heavy tasks.
This priority assignment algorithm is in this paper
adapted to aperiodic tasks. The optimal utilization thresh-
old value defining a task as light or heavy is also pro-
vided, thus eliminating the need for further improvements
of this state-of-the-art algorithm. The optimal threshold
value also serves as a constant time utilization test that can
be used in admission control.
2. Problem Definition and Previous Results
Consider a task model in which independent aperiodic
tasks arrive at a multiprocessor-based real-time system at
random without prior knowledge from the scheduler. The
Proceedings of the 9th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS’03)
1080-1812/03 $17.00 © 2003 IEEE