Professional Documents
Culture Documents
Time-Utility Function Decomposition Techniques For Utility Accrual Scheduling Algorithms in Real-Time Distributed Systems
Time-Utility Function Decomposition Techniques For Utility Accrual Scheduling Algorithms in Real-Time Distributed Systems
9, SEPTEMBER 2005
Abstract—We consider Real-Time CORBA 1.2’s distributable threads (DTs), whose time constraints are specified using time/utility
functions (TUFs), operating in legacy environments. In legacy environments, system node resources—both physical and logical—are
shared among time-critical DTs and local applications that may also be time-critical. Hence, DTs that are scheduled using their
propagated TUFs, as mandated by Real-Time CORBA 1.2’s Case 2 approach, may suffer performance degradation, if a node utility
accrual (UA) scheduler achieves higher locally accrued utility by giving higher eligibility to local threads than to DTs. To alleviate this,
we consider decomposing TUFs of DTs into “sub-TUFs” for scheduling segments of DTs. We present five decomposition techniques,
called UT , SCEQF , SCALL, OP T CON, and T UF S, which are specific to different classes of UA scheduling algorithms, such as
those that use utility density and those that use deadline as their key decision metric. Our experimental studies identify the
decomposition technique that performs best for each class of UA scheduling algorithms. In particular, our studies show that OP T CON
and T UF S perform best for utility density-based UA algorithms, while SCEQF and SCALL perform best for deadline-based
UA algorithms.
Index Terms—Distributable thread, time/utility function, value function, time constraint decomposition, Real-Time CORBA 1.2.
1 INTRODUCTION
Fig. 2. Example TUF time constraints. (a) MITRE/TOG AWACS association TUF [9]. (b) and (c) GD/CMU coastal air defense plot correlation, track
maintenance, and missile control TUFs [10]. (d) Some step TUFs.
1140 IEEE TRANSACTIONS ON COMPUTERS, VOL. 54, NO. 9, SEPTEMBER 2005
2.4 Timeliness Model existing output schedule the highest PUD thread with the
We use TUFs to specify the time constraints of a DT, an threads on which it depends. DASA also calculates PUD for
OLT, or a local thread, generically referred to as T , and each thread after building its dependency chain; it then
denote the TUF of a thread T as UðT Þ. Thus, the completion inserts the threads, from high PUDs to low PUDs, into a
of T at a time t will yield a timeliness utility U ðT ; tÞ. DTs tentative schedule in an EDF order. Upon inserting a thread,
propagate their TUFs as they transit nodes and we DASA performs a feasibility check and ensures that the
decompose the propagated TUF of a DT into sub-TUFs for predicted completion time of each thread left in the tentative
node-local scheduling.
schedule never exceeds its deadline. DASA and Dover only
Though TUFs can take arbitrary shapes, here we focus on
deal with step TUFs, while GUS and LBESA can deal with
unimodal TUFs. Unimodal TUFs are those that have a single,
optimal, completion time interval. Fig. 2 shows examples. arbitrary shapes of TUFs. LBESA examines threads in an EDF
Our motivation to consider this TUF class is that they order and performs a feasibility check where it rejects threads
encompass the majority of time constraints in our motivat- with low PUDs until the schedule is feasible.
ing applications (see Fig. 2). GUS, DASA, and LBESA have the best performance
Each TUF UðT Þ is assumed to have an initial time arðT Þ among existing UA algorithms [11]. Moreover, DASA and
and a deadline time dlðT Þ. Initial time is the earliest time for LBESA mimic EDF to reap its optimality during under-
which the function is defined, while deadline time is the loads. For independent threads with step TUFs, Dover has
latest time at which the function drops to a zero utility the optimal competitive factor [14].
value. In this paper, we assume that arðT Þ is equal to the Different characteristics of the scheduling algorithms
arrival time of a thread T , which is simply the time at which require different DTD mechanisms to improve DT perfor-
the thread becomes ready for execution. The arrival time of mance. To find good techniques for UA algorithms, we also
a DT is the arrival time of the first OLT of the DT. We also analyze other factors that can influence the DTD problem,
assume that UðT Þ is defined from arðT Þ until the future
potentially affecting DT performance:
indefinitely. Thus, the term “deadline time” (or “deadline”
in abbreviation) is used to denote the last point that a TUF 1. TUF Shape. TUF shapes can affect DTD and thread
crosses the t-axis. For a downward step TUF, the deadline scheduling. For example, it would be beneficial to
time is its discontinuity point. Further, we assume that schedule a thread with a decreasing TUF as early as
U ðT ; tÞ 0; 8t 2 ½arðT Þ; dlðT Þ and U ðT ; tÞ ¼ 0; 8t dlðT Þ. possible to accrue high utility. However, it may be
The execution time of a DT/OLT/local thread T is beneficial to delay the execution of a thread with a
denoted as exðT Þ. We incorporate the transmission delays strictly concave TUF so as to complete it at the time
of all inter-OLT messages of a DT into the DT’s execution corresponding to the optimum TUF value. In this
time. Thus, a DT’s execution time simply denotes the total paper, we only consider unimodal TUFs (e.g., step
workload of all its OLTs. TUFs, linear TUFs). Further, different scheduling
algorithms focus on TUFs with different shapes.
2. Task Load. We define task load (or load, for short) as
3 UA SCHEDULERS AND FACTORS CONSIDERED IN
the ratio of the rate of work generated to the total
THE DTD PROBLEM processing capacity of the system. The analytical
The type of the scheduling algorithm employed at a node expression for load is given in Section 5.1. Different
can impact the DTD problem and, thus, DT performance. scheduling algorithms produce different behaviors
We consider UA scheduling algorithms including the under different loads; thus, load may affect DTD for
Generic Utility Scheduling algorithm (GUS) [11], Depen- these algorithms. For example, EDF is optimal
dent Activity Scheduling Algorithm (DASA) [13], Locke’s during underload situations in terms of satisfying
Best Effort Scheduling Algorithm (LBESA) [12], and Dover all deadlines [20], but suffers domino effects during
[14], and a non-UA algorithm—the Earliest Deadline First overload situations [12]. DASA and LBESA are also
(EDF) [19] for comparison. LBESA, Dover , and EDF consider optimal during underloads, but provide much better
independent threads, while GUS and DASA allow threads performance during overloads than EDF [12], [13].
to share resources. To deal with arbitrary shapes of TUFs, GUS does not
These algorithms make scheduling decisions based on maintain the EDF order for the ready queue, so it
different metrics. EDF exclusively considers a thread’s yields a different timeliness utility from EDF, DASA,
deadline and suffers significant domino effect during and LBESA [11].
overloads [12]. Dover is a timer-based UA algorithm which 3. Global Slack Factor (GSF). We define a DT’s
requires a timer for Latest Start Time. GUS, DASA, and Global Slack F actor (GSF) as the ratio of the DT’s
LEBSA use a metric called Potential Utility Density (or PUD). execution time to its TUF’s deadline time, which is the
The PUD of a thread simply measures the amount of utility sum of the DT’s execution time and its slack. For
that can be accrued per unit time by executing the thread example, Fig. 4 shows the slack and deadline time of a
and the thread(s) that it depends upon for obtaining (non- DT with four segments (m ¼ 4). Thus, the DT’s GSF
CPU) resources. Thus, the PUD of a thread measures the which describes its global stack is
“return on investment” for the thread. exðT Þ
At each scheduling event, GUS builds the dependency GSF ðT Þ ¼ :
dlðT Þ arðT Þ
chain for each thread in the ready queue and appends to the
1142 IEEE TRANSACTIONS ON COMPUTERS, VOL. 54, NO. 9, SEPTEMBER 2005
TABLE 1
Baseline Settings
total average arrival rate is k=local per second. of TUFs to evaluate our methods. The parameter
Execution times of local threads are exponentially setting of our baseline experiment is summarized in
distributed with mean in 1=local seconds. The rate of Table 1. We select different shapes of TUFs, but keep
work due to local threads is thus klocal =local . OptV alue of each TUF to be 10 and its deadline time
. DTs. Similarly to local threads, DTs are generated as to be 20. In Table 1, T UF1 is the right half of a
n streams of Poisson processes with mean inter- quadratic function in the first quadrant and T UF2 is
arrival 1=DT time. For simplicity, we assume that a linear function, so they are both nonincreasing.
DTs are homogeneous. In particular, we assume that T UF3 is a downward step function. T UF4 is a
all DTs consist of the same number of segments and complete quadratic function in the first quadrant, so
the execution times of all the segments (OLTs) follow it is strictly concave. T UF5 is the combination of
the same exponential distribution with a mean different TUFs. The TUFs of local threads are
1=OLT seconds. We assume that the number of downward step functions with variable heights.
OLTs contained in a DT is m. The total execution
times of DTs thus follow an m-stage Erlang 5.2 Experimental Results
distribution with mean m=OLT . The rate of work The primary performance metric that we use to evaluate the
due to DTs is therefore mDT =OLT . The execution DTD methods is accrued utility ratio (or AUR). AUR is
node of an OLT is selected randomly and uniformly simply the ratio of the accrued utility to the maximum
from the k nodes. possible total utility (which is the sum of each DT’s
. System Load. We define the normalized load (or load, maximum utility).
for short) as the ratio of the rate of work generated to We use the notation AURB A ðCÞ to denote the AUR
the total processing capacity of the system. That is, obtained under a scheduling algorithm
n m DT k local A 2 fGUS; DASA; LBESA; Dover ; EDF g;
load ¼ þ k: ð1Þ
OLT local
a DTD technique
For a stable system, we have 0 load 1. We also
B 2 fUT ; SCEQF ; SCALL; OP T CON; T UF Sg;
define frac local as the least fraction of PUD that can
possibly be contributed by local threads in node- and a TUF C 2 fT UF1 ; T UF2 ; T UF3 ; T UF4 ; T UF5 g. Thus,
local scheduling, i.e., for example, AURSCEQF
GUS ðT UF4 Þ denotes the AUR that DTs
can accrue under the GUS scheduler, SCEQF decomposi-
P UDlocal tion technique, and T UF4 .
frac local ¼ : ð2Þ
P UDlocal þ P eakP UDOLT In Section 3, we evaluate the effects of all factors
presented on system performance in a collective way, so
. TUFs. Different threads have different TUFs. Each all simulations are performed with variation of several
DT has a propagated TUF and we define five classes parameters describing the factors.
WU ET AL.: TIME/UTILITY FUNCTION DECOMPOSITION TECHNIQUES FOR UTILITY ACCRUAL SCHEDULING ALGORITHMS IN REAL-TIME... 1145
Fig. 7. Accrued Utility Ratio with GUS under T UF3 . (a) AUR versus load. (b) AUR versus GSF .
Fig. 8. Accrued Utility Ratio with LBESA under T UF3 . (a) AUR versus load. (b) AUR versus GSF .
5.2.1 DTD Methods with Different Scheduling the same operations with downward step functions and
Algorithms they perform better than AURSCEQF GUS . The methods
We first study how our designed DTD techniques work on OP T CON and T UF S perform the best. For example, at
different scheduling algorithms. We consider downward load ¼ 0:6, AURSCEQF
GUS ¼ 42%, while
step functions (i.e., T UF3 ) for the DTs as all the algorithms, AURSCALL ¼ AURUT
GUS GUS ¼ 56%
with the exception of GUS and LBESA, cannot deal with
arbitrarily shaped TUFs. Further, we do not consider and AUROP T CON
GUS ¼ AURTGUS
UF S
¼ 73%.
resource dependencies, as LBESA, Dover , and EDF cannot The performance results of the DTD strategies under the
directly address resource dependencies. LBESA algorithm are shown in Fig. 8a and Fig. 8b. In both
The TUFs of local threads are set to downward step figures, SCEQF performs better than others, especially at
functions with heights of 40 and the maximum heights of high load and GSF , and the other four strategies produce
DT TUFs are bounded at 10. Thus, the frac local in these almost identical results.
experiments is 0.8. Since we only focus on T UF3 here, for Fig. 9 shows the performance of DTD techniques under
simplicity, we denote AURB B
A ðT UF3 Þ as AURA . AURs of
the DASA algorithm, which has very similar trends as those
different methods are recorded as the load and GSF varies under GUS. From the figure, we observe that, under DASA,
from 0 to 1. When we refer to the GSF of a task set, it has as load and GSF varies, the performance trend is
the same value as the GSF of each task in the set. As OP T CON ¼ T UF S > UT ¼ SCALL > SCEQF .
shown in Table 1, when load varies, we keep the In Fig. 10, we show performance of the DTD methods
execution time OLT ¼ local ¼ 1:0, but change the mean under the Dover algorithm. The AUR of DTs in Fig. 10 drops
interarrival time 1=DT and 1=local ; when GSF varies, we to under 0:2 when load or GSF is larger than 0:5. All curves
keep DT ¼ local ¼ 1=8:33, but change OLT and local . are very close to each other, which indicates that the
Fig. 7 shows AURGUS of the DTD methods under different DTD methods have little effect on Dover ’s schedul-
varying load and GSF. From Fig. 7, we observe that the ing decisions.
curves in both figures indicate similar trends. For example, As a comparison, the performance of the EDF algorithm
in Fig. 7a, when load increases, AURGUS of all DTD under the different DTD strategies is shown in Fig. 11.
strategies decreases. This is reasonable because more Under EDF, SCEQF performs better than the others when
threads miss their deadlines and, thus, fewer utilities are load or GSF is low (in the figure, approximately less than
accrued. But, GUS under different DTD strategies accrues 0.5) because deadline slicing gives OLTs shorter deadline
different utilities, even when the load is very light. times, which in turn gives them higher priorities for
AURSCEQF
GUS has the worst performance among all strategies. accessing resources under EDF. But, when load or GSF
AURUT GUS and AURSCALL
GUS are identical because they perform approach 1.0, SCEQF shows worse performance than the
1146 IEEE TRANSACTIONS ON COMPUTERS, VOL. 54, NO. 9, SEPTEMBER 2005
Fig. 9. Accrued Utility Ratio with DASA. (a) AUR versus load. (b) AUR versus GSF .
Fig. 10. Accrued Utility Ratio with Dover . (a) AUR versus load. (b) AUR versus GSF .
Fig. 11. Accrued Utility Ratio with EDF. (a) AUR versus load. (b) AUR versus GSF .
others. This is because if slack is too tight or the load too From Fig. 7, Fig. 8, Fig. 9, Fig. 10, and Fig. 11, we can infer
high, with SCEQF , it is easy for an OLT in the DT to miss that different metrics employed in the scheduling algo-
its subdeadline, which is shorter than the DT’s deadline, rithms result in their different scheduling behaviors; thus,
resulting in failure of the DT. the performance of a given DTD method will be differently
EDF is not a UA scheduler, but its primary performance influenced by different underlying schedulers. For this
measure—i.e., deadline miss ratio, can be converted to reason, large performance gaps, in terms of AURs, are
AUR. Intuitively, the more deadlines that are met by DTs, particularly interesting to us.
the more utilities are accrued. Thus, the deadline miss ratio To understand such differences, we consider three types
performance metric of EDF can be a reasonable metric for of resource competition among threads. These include local-
UA scheduling. The results in Fig. 11a are consistent with local, local-global, and global-global. DTs are subject to
Kao and Garcia-Molina’s experimental results on the serial local-global and global-global contention. A scheduling
subtask problem (SSP) presented in [21], where the deadline algorithm resolves the contention mainly by its scheduling
miss ratio of EQF is lower than the ultimate deadline (UD) metric. In Section 4, we categorize the DTD methods into
strategy as load varies from 0.1 to 0.5. Kao and Garcia- three classes and they alter only the OLTs’ metrics used by
Molina also argue in [21] that “if the slack is too tight or if the schedulers, so they only impact local-global and global-
the load is too high, no matter what SSP policy we use, global contention. Thus, the choice of a DTD strategy
many deadlines will be missed.” significantly affects DTs and their AURs.
WU ET AL.: TIME/UTILITY FUNCTION DECOMPOSITION TECHNIQUES FOR UTILITY ACCRUAL SCHEDULING ALGORITHMS IN REAL-TIME... 1147
Fig. 12. Accrued Utility Ratio with GUS under T UF4 . (a) AUR versus load. (b) AUR versus GSF .
Fig. 13. Accrued Utility Ratio with LBESA under T UF4 . (a) AUR versus load. (b) AUR versus GSF .
According to our algorithm descriptions in Section 3, performance of DTs. Thus, in this section, we study the
GUS resolves resource contention mainly by comparing the effect of DTD with different shapes of TUFs. Our study
PUDs of threads. Our simulation reveals that, under GUS, focuses on GUS and LBESA as they are the only ones that
the performance of OP T CON and T UF S, which increase allow arbitrarily shaped TUFs.
OLTs’ PUDs, are better than that of others, for various We conduct experiments with nonincreasing TUFs
parameter settings. We notice that slicing the deadline of a (T UF1 , T UF2 , and T UF3 ) and a strictly concave TUF
DT and allocating subdeadlines to its OLTs can also (T UF4 ). Note that step TUFs are also nonincreasing. To
increase the OLTs’ PUDs. But, such a deadline slicing obtain an average performance of the DTD methods on
technique, i.e., SCEQF , performs poorly for DTs. The various TUFs, we also consider T UF5 , which is a combina-
reason is that a DT consists of a series of OLTs and, if any tion of different TUFs. The experimental results show that
OLT in the DT misses its subdeadline and is aborted by the the performances of DTs with nonincreasing TUFs are quite
scheduler, the parent DT fails. Thus, deadline slicing similar and the major performance difference can be
techniques sometimes can be detrimental to DTs if too observed with T UF4 , so we only list plots with T UF4 .
“tight” subdeadline constraints are assigned to their OLTs. Fig. 12 shows the results of GUS under T UF4 . In contrast to
It is interesting to observe that Dover , as a timer-based the results under nonincreasing TUFs, different DTD
scheduling algorithm, is almost not affected by TUF strategies show different performance under strictly concave
decomposition. Both LBESA and DASA compare deadlines TUFs, respectively. But, at any load or GSF , T UF S performs
and PUDs for scheduling, but in different ways. From their the best, while SCEQF and SCALL perform the worst.
performance under different DTD methods, we can infer We show the corresponding results of LBESA with T UF4
that DASA is more “PUD-based” and LBESA is more in Fig. 13. With strictly concave TUFs, we obtain different
“deadline-based.” results from those with nonincreasing TUFs. Fig. 13 shows
Thus, from the experimental results in this section, we that SCEQF only outperforms others when load and GSF
can derive a more precise scheduler categorization than that approach 1:0; at light load and GSF , SCALL has the best
in Section 4. We now have three classes of schedulers: performance.
deadline-based (LBESA and EDF), PUD-based (GUS and Among the four shapes of TUFs considered in our
DASA), and timer-based (Dover ). We summarize the experiments, strictly concave TUFs have the most apparent
performance of DTD strategies for each class of schedulers impact on DTD in the sense that the most apparent
in Section 5.3. performance gap can be observed among different DTD
strategies. However, the results observed in Fig. 12, Fig. 13,
5.2.2 Effect of TUF Shape and other experiments are consistent with those in
Our designed DTD methods will decompose different Section 5.2.1—DTD strategies that change an OLT’s PUD
shapes of TUFs differently, possibly yielding different (OP T CON and T UF S) work better for GUS and those that
1148 IEEE TRANSACTIONS ON COMPUTERS, VOL. 54, NO. 9, SEPTEMBER 2005
Fig. 14. AUR versus frac local with GUS under T UF3 . Fig. 16. AUR versus frac local with LBESA under T UF3 .
Fig. 15. AUR versus frac local with DASA under T UF3 . Fig. 17. AUR versus frac local with Dover under T UF3 .
slice a DT’s deadline to allocate to its OLTs (SCEQF and However, when frac local exceeds 0.5, OLTs with sub-
SCALL) work better for LBESA. TUFs allocated by UT will be at a disadvantage under the
PUD-based scheduling of GUS and DASA. Thus, we
5.2.3 Effect of Local Threads observe that the higher the frac local, the worse UT
Comparing the AURs of the different DTD strategies, we performs. The performances of OP T CON and T UF S are
observe that, as the load and GSF increase, the performance almost a constant as frac local increases because these
of all strategies deteriorates. However, all of our previously methods maintain PUDs of OLTs to be comparable with
reported experiments are carried out with frac local ¼ 0:80. PUDs of local threads.
We had hypothesized that, by changing the deadlines or Figs. 16 and 17 show the performance of LBESA and
PUDs of OLTs, various DTD methods can help DTs to Dover with different DTD methods under T UF3 . In Fig. 16,
“grab” resources (including CPU) from local threads since we observe that SCALL, OP T CON, and T UF S are almost
deadlines or PUDs are key scheduling metrics used by constant as frac local increases, but only slightly outper-
UA scheduling algorithms. For example, the likelihood of form the others. This is reasonable because LBESA is in the
DTs obtaining resources can be improved by reducing the class of “deadline-based” and its scheduling decisions are
deadlines of OLTs (under LBESA) or by increasing the only partially dependent on PUDs. On the other hand, in
PUDs of OLTs (under GUS and DASA). Fig. 17, all curves converge in a narrow zone between 0.24
To verify this, we vary the relative proportion of the two and 0.29 (corresponding to the point of load ¼ 0:5 in
kinds of threads, by varying frac local from 0.3 to 0.88 and Fig. 10a). Since Dover does not consider PUDs, the results
study the AUR of different algorithms. We set OLT ¼ of Dover do not exhibit any regular pattern in Fig. 17.
local ¼ 1:0 and DT ¼ local ¼ 1=8:33 and, therefore, load is To compare the performance of GUS and LBESA with
about 0.5. changing frac local under other shapes of TUFs, we also
Figs. 14 and 15 show the performance of GUS and DASA conduct experiments with T UF1 , T UF2 , and T UF4 . Results
with different DTD methods under T UF3 . We observe that with T UF1 and T UF2 are similar to those in Fig. 14 and
GUS and DASA have similar performance. As frac local Fig. 16. But, interesting results can be observed when GUS
increases (i.e., more PUD is contributed by local threads), and LBESA are scheduling T UF4 that is strictly concave and
AURUT GUS=DASA ðT UF3 Þ drops dramatically. When GUS and the results are shown in Fig. 18 and Fig. 19.
DASA are used for scheduling OLTs and local threads and In Fig. 18, OP T CON and T UF S are apparently better
when frac local is less than or equal to 0.5, the two classes than the others, while SCEQF performs the worst. For
of threads (OLTs and local threads) have almost equal strictly concave TUFs, OP T CON and T UF S allow enough
PUDs according to the definition of frac local and, thus, slack for each OLT and also improve the OLT’s PUD with
have almost equal chances of being selected to execute. In respect to the TUF shape of the DT. Therefore, they show
such cases, intuitively, UT should perform similar to superior performance. In Fig. 19, performance gaps are
methods that increase PUDs of DTs, but better than more pronounced than those in Fig. 16. With LBESA, the
deadline slicing methods. This is illustrated in the plots. mechanism SCALL, which slices the DT’s deadline and
WU ET AL.: TIME/UTILITY FUNCTION DECOMPOSITION TECHNIQUES FOR UTILITY ACCRUAL SCHEDULING ALGORITHMS IN REAL-TIME... 1149
Fig. 18. AUR versus frac local with GUS under T UF4 . Fig. 19. AUR versus frac local with LBESA under T UF4 .
considers the Opt of the DT, performs the best. OP T CON Figs. 22 and 23 show the AURs of GUS and DASA with
and T UF S show very similar performance as that of UT , dependencies, as frac local varies, respectively.
which implies improving PUDs of OLTs has little effect on From Fig. 20, Fig. 21, Fig. 22, and Fig. 23, GUS and DASA
LBESA’s scheduling decisions. We have to note that, in exhibit similar performance with resource dependencies.
Fig. 19, the performance gaps among all DTD mechanisms From the figures, we observe that the performance drops
are within 5 percent, which means frac local has only when there are resource dependencies; AURs of GUS and
DASA under different DTD techniques decrease to less than
limited effect on DTD strategies under LBESA.
The performance of various DTD strategies under EDF is 1 percent. Moreover, we do not observe any regular pattern
in the results when load, GSF , and frac local are varied.
not affected by frac local. This is because varying frac local
This is reasonable because DTD cannot compensate for
only changes the PUD contributed by the local threads, but
major interference among OLTs. Resource access operations
it does not affect the scheduling decisions made by EDF. and consequent dependencies among OLTs and local
threads can cause unexpected, sometimes large, interfer-
5.2.4 Effect of Resource Dependencies
ence to DTD methods, resulting in their poor performance.
There are no resource dependencies among OLTs in the
We observed similar results for GUS with other TUF shapes
experiments that we have conducted so far. In this section, and resource dependencies.
we study how resource dependencies among OLTs affect
the performance of DTD strategies. 5.3 Summary of Experiments and Conclusions
We impose resource dependencies among OLTs of Our experiments in Section 5.2 verified our proposed
different DTs and among OLTs and local threads. That is, heuristics on DTD strategies for UA scheduling, by
we incorporate local-global and global-global dependencies considering possible factors that can affect the DTD
at the same time. We then study the performance of the performance. We now summarize our results and draw
DTD strategies under GUS and DASA as only these two conclusions.
UA algorithms consider TUFs under resource dependen- We use UT as a baseline method and measure the
cies. For OLTs within a single DT, there are no resource performance gains of other DTD methods over UT . For each
dependencies, but only precedence dependencies. We first class of UA algorithms, we summarize our conclusions
about class-appropriate DTD techniques as follows:
consider step TUF (T UF3 ) for these experiments and then
other shapes. 1. With “PUD-based” UA algorithms (GUS and
Figs. 20 and 21 show AURGUS and AURDASA , respec- DASA), OP T CON and T UF S always perform better
tively, as load and GSF increase. We also vary frac local to than UT , while SCEQF and SCALL always per-
study the impact of resource dependencies on performance. form worse or no better than UT for different TUF
Fig. 20. Accrued Utility Ratio with GUS Under T UF3 and resource dependencies. (a) AUR versus load. (b) AUR versus GSF .
1150 IEEE TRANSACTIONS ON COMPUTERS, VOL. 54, NO. 9, SEPTEMBER 2005
Fig. 21. Accrued Utility Ratio with DASA under resource dependencies. (a) AUR versus load. (b) AUR versus GSF .
shapes. For strictly concave TUFs, T UF S performs 5. With resource dependencies among OLTs of differ-
the best. ent DTs, all DTD strategies show very poor
2. With “deadline-based” UA algorithms (e.g., LBESA), performance because of the unexpected and large
SCEQF and SCALL always perform better than, or interference caused by resource access operations
at least as well as, UT , while OP T CON and T UF S (and consequent dependencies).
always perform no better than UT for different TUF
shapes. 6 PAST WORK
3. With “timer-based” UA algorithms (e.g., Dover ),
different DTD strategies show little difference in There are relatively few studies on the DTD problem. Most of
improving DTs’ performance. the past efforts on time constraint decomposition in real-time
The performance comparison of DTD strategies distributed systems focus on the deadline constraint. We
summarize these efforts and contrast them with our work.
(in terms of AUR) from 1, 2, and 3 is summarized in
A legacy issue that is analogous to the one that motivates
Table 2. For the baseline DTD method UT , “& ”
our DTD problem is presented in Real-Time CORBA 1.0
means that its AUR drops with the increase of load
(RTC1) [23], where any node may be shared by both RTC1
and GSF . The other entries of the table describe applications and non-CORBA applications. RTC1 priorities
performance gains of the other DTD methods over are mapped into each node’s local priority space, which is
the baseline strategy UT . shared by RTC1 and non-CORBA applications. In all three
4. For downward step TUFs with GUS and DASA, the cases of RTC1, there are end-to-end timeliness requirements
increase of frac local causes quick drops on AURs of that must be decomposed into timeliness requirements on
UT and SCALL. However, OP T CON and T UF S each node involved in a multinode computation. On those
perform better, while SCEQF performs worse than nodes, these decomposed timeliness requirements contend
UT because the former methods can improve the for resources with the timeliness requirements of strictly
OLTs’ PUDs seen by the node-local UA scheduler node-local computations. The challenge is for the scheduler
when frac local increases. With LBESA and increas- to resolve this contention in a manner that is optimal
ing frac local, no DTD strategies outperform SCALL. according to application-specific criteria for both the
The results described in 4 are shown in Table 3, distributed computations and the local computations. A
where the performance trend of UT with the multinode computation with an end-to-end deadline has
increase of frac local is described as “& ” and the local subcomputations with per-node deadlines derived
performance gains of the other DTD methods over from the end-to-end deadline; these deadlines contend with
UT are shown in the table entries. the node-local computation deadlines.
Fig. 22. AUR versus frac local with GUS under T UF3 and resource
dependencies. Fig. 23. AUR versus frac load with DASA under resource dependencies.
WU ET AL.: TIME/UTILITY FUNCTION DECOMPOSITION TECHNIQUES FOR UTILITY ACCRUAL SCHEDULING ALGORITHMS IN REAL-TIME... 1151
TABLE 2
DTD Strategies Summary I: Increasing load and GSF with Different TUFs
TABLE 3
DTD Strategies Summary II: Increasing frac local with Different TUFs
In RTC1 systems, an RTC1 thread has a 15-bit CORBA critical-path concept. The strategy used for finding slices is
(“global”) priority; when a client invokes a servant, the to determine a critical path in the task graph that minimizes
client CORBA priority is mapped into the servant node’s the overall laxity of the path. The slicing technique is
local operating system (much smaller) priority space using optimal in the sense that it maximizes the minimum task
an application or system-specific mapping; these priorities laxity. The optimality applies to task assignments and
contend with the node-local computation priorities. (The communication costs that are a priori known.
mapping is reversed when an invocation returns; care must In [28], Garcia and Harbour present an approach that
be taken in defining the mappings so as to retain priority derives deadlines for preemptive, deadline-monotonic task
fidelity end-to-end.) scheduling. Given an initial local deadline assignment, the
The DTD problem is also analogous to the problem of strategy seeks to find an improved deadline assignment
deadline decomposition in distributed real-time systems using a heuristic iterative approach.
whose time constraints are deadlines. In fact, deadline Saksena and Hong present a deadline-distribution
decomposition is a special case of DTD, where all TUFs are approach for preallocated tasks in [29] and [30]. The
binary-valued, downward step-shaped functions. approach specifies the end-to-end deadline as a set of local
Bettati and Liu [24], [25] present an approach for deadline-assignment constraints and calculates the largest
scheduling preallocated flow-shop (sequential) tasks in a value of a scaling factor based on a set of local deadline
hard real-time distributed environment. In their model, assignments known a priori. The scaling factor is then
global tasks consist of the (same) set of subtasks to be applied to the task execution time. The local deadline
executed on nodes in the same order. The goal is to devise assignment is chosen to maximize the largest value of the
efficient offline algorithms for computing a schedule for the scaling factor.
subtasks such that all deadlines are met (if such a schedule In [31], Jonsson and Shin present a deadline-distribution
exists). In their work, local deadlines are assigned by scheme that distributes task deadlines using adaptive
distributing end-to-end deadlines evenly over tasks and metrics. The authors experimentally show that their scheme
then tasks are nonpreemptively scheduled using a dead- yields significantly better performance in the presence of
line-based priority scheme. high resource contention. The deadline distribution pro-
Kao and Garcia-Molina present multiple strategies for blem that is addressed in [31] focuses on distributed hard
automatically translating the end-to-end deadline into real-time systems with relaxed locality constraints. Thus,
deadlines for individual subtasks in distributed soft real- schedulability analysis is performed at preruntime and only
time systems [21], [26]. They reduce the subtask deadline a subset of the tasks are constrained by preassignment to
assignment problem (SDA) into two subproblems: the serial specific processors.
subtask problem (SSP) and parallel subtasks problem (PSP). Thus, to the best of our knowledge, all past efforts on
The authors present decomposition strategies called Ulti- time constraint decomposition have focused on deadlines.
mate Deadline (UD), Effective Deadline (ED), Equal Slack We are unaware of any work that considered TUF
(EQS), and Equal Flexibility (EQF) for the SSP problem. decomposition.
Furthermore, they propose a strategy called DIV-x for the
PSP problem. The techniques are aimed at systems with
complete a priori knowledge of task-processor assignment. 7 CONCLUSIONS AND FUTURE WORK
Natale and Stankovic [27] present the end-to-end dead- In this paper, we consider integrating RTC2 applications,
line slicing technique for assigning slices to tasks using the which are subject to TUF time constraints and UA optimality
1152 IEEE TRANSACTIONS ON COMPUTERS, VOL. 54, NO. 9, SEPTEMBER 2005
criteria into legacy environments which contain time- [12] C.D. Locke, “Best-Effort Decision Making for Real-Time Schedul-
ing,” PhD dissertation, Carnegie Mellon Univ., 1986, CMU-CS-86-
critical, non-RTC2 applications. Since system node re- 134, http://www.real-time.org, Oct. 2004.
sources (that use UA scheduling algorithms) are now [13] R.K. Clark, “Scheduling Dependent Real-Time Activities,” PhD
shared between RTC2 and non-RTC2 applications, DTs of dissertation, Carnegie Mellon Univ., 1990, CMU-CS-90-155,
http://www.real-time.org, Oct. 2004.
RTC2 applications may suffer performance degradation [14] G. Koren and D. Shasha, “D-Over: An Optimal On-Line
due to interference from non-RTC2 application threads. Scheduling Algorithm for Overloaded Real-Time Systems,” Proc.
To alleviate this, we consider decomposing TUFs of DTs IEEE Real-Time Systems Symp., pp. 290-299, Dec. 1992.
into sub-TUFs for scheduling segments of DTs. We present [15] K. Chen and P. Muhlethaler, “A Scheduling Algorithm for Tasks
Described by Time Value Function,” J. Real-Time Systems, vol. 10,
decomposition techniques called UT , SCEQF , SCALL, no. 3, pp. 293-312, May 1996.
OP T CON, and T UF S, which are specific to different [16] D. Mosse, M.E. Pollack, and Y. Ronen, “Value-Density Algorithm
classes of UA algorithms, such as those that use utility to Handle Transient Overloads in Scheduling,” Proc. IEEE
Euromicro Conf. Real-Time Systems, pp. 278-286, June 1999.
density and those that use deadline as their key metric. Our [17] J. Wang and B. Ravindran, “Time-Utility Function-Driven
experimental studies identify the conditions that affect the Switched Ethernet: Packet Scheduling Algorithm, Implementa-
performance of the decomposition techniques. Further, our tion, and Feasibility Analysis,” IEEE Trans. Parallel and Distributed
Systems, vol. 15, no. 2, pp. 119-133, Feb. 2004.
studies show that OP T CON and T UF S perform best for [18] L. Sha, R. Rajkumar, and J.P. Lehoczky, “Priority Inheritance
utility density-based UA algorithms and SCEQF and Protocols: An Approach to Real-Time Synchronization,” IEEE
SCALL perform best for deadline-based UA algorithms. Trans. Computers, vol. 39, no. 9, pp. 1175-1185, Sept. 1990.
[19] W. Horn, “Some Simple Scheduling Algorithms,” Naval Research
There are several interesting directions for future work.
Logistics Quarterly, vol. 21, pp. 177-185, 1974.
One direction is to consider TUF decomposition under [20] C.L. Liu and J.W. Layland, “Scheduling Algorithms for Multi-
emerging stochastic UA scheduling algorithms [11]. An- programming in a Hard Real-Time Environment,” J. ACM, vol. 20,
other direction is to develop scheduling algorithms for no. 1, pp. 46-61, 1973.
[21] B. Kao and H. Garcia-Molina, “Deadline Assignment in a
scheduling DTs according to RTC2’s Cases 3 and 4. Distributed Soft Real-Time System,” IEEE Trans. Parallel and
Distributed Systems, vol. 8, no. 12, pp. 1268-1274, Dec. 1997.
[22] A. Varga, “OMNeT++ Discrete Event Simulation System,”
ACKNOWLEDGMENTS http://www.omnetpp.org/, Oct. 2004.
[23] OMG, “Real-Time CORBA Joint Revised Submission,” Object
This work was supported by the US Office of Naval Management Group, Technical Report OMG TC Document ptc/
Research under Grant N00014-00-1-0549 and the MITRE 99-05-03, May 1998, http://www.omg.org/docs/ptc/99-05-03.
Corporation under Grant 52917. pdf, Oct. 2004.
[24] R. Bettati and J.W.S. Liu, “Algorithms for End-to-End Scheduling
to Meet Deadlines,” Proc. IEEE Symp. Parallel and Distributed
Processing, pp. 62-67, 1990.
REFERENCES [25] R. Bettati and J.W.S. Liu, “End-to-End Scheduling to Meet
[1] OMG, “Real-Time CORBA 2.0: Dynamic Scheduling Specifica- Deadlines in Distributed Systems,” Proc. IEEE Real-Time Systems
tion,” Object Management Group, technical report, Sept. 2001, Symp., pp. 452-459, 1992.
OMG Final Adopted Specification, http://www.omg.org/docs/ [26] B.C. Kao, “Scheduling in Distributed Soft Real-Time Systems with
ptc/01-08-34.pdf, Oct. 2004. Autonomous Components,” PhD dissertation, Princeton Univ.,
[2] E.D. Jensen, A. Wellings, R. Clark, and D. Wells, “The Distributed Nov. 1995.
Real-Time Specification for Java: A Status Report,” Proc. Embedded [27] M.D. Natale and J.A. Stankovic, “Dynamic End-to-End Guaran-
Systems Conf., 2002. tees in Distributed Real-Time Systems,” Proc. IEEE Real-Time
[3] J.D. Northcutt, Mechanisms for Reliable Distributed Real-Time Systems Symp., 1994.
Operating Systems: The Alpha Kernel. Academic Press, 1987. [28] J.J.G. Garcia and M.G. Harbour, “Optimized Priority Assignment
[4] E.D. Jensen and J.D. Northcutt, “Alpha: A Non-Proprietary for Tasks and Messages in Distributed Hard Real-Time Systems,”
Operating System for Large, Complex, Distributed Real-Time Proc. IEEE Workshop Parallel and Distributed Real-Time Systems,
Systems,” Proc. IEEE Workshop Experimental Distributed Systems, pp. 124-132, 1995.
pp. 35-41, 1990. [29] M. Saksena and S. Hong, “An Engineering Approach to
[5] The Open Group, “MK7.3a Release Notes,” http://www.real- Decomposing End-to-End Delays on a Distributed Real-Time
time.org/docs/RelNotes7.Book.pdf, 1998. System,” Proc. IEEE Workshop Parallel and Distributed Real-Time
[6] GlobalSecurity.org, “Multi-Platform Radar Technology Insertion Systems, pp. 244-251, 1996.
Program,” http://www.globalsecurity.org/intell/systems/mp- [30] M. Saksena and S. Hong, “Resource Conscious Design of
rtip.htm/, Oct. 2004. Distributed Real-Time Systems: An End-to-End Approach,” Proc.
[7] GlobalSecurity.org, “BMC3I Battle Management, Command, IEEE Int’l Conf. Eng. of Complex Computer Systems, pp. 306-313,
Control, Communications and Intelligence,”http://www.global 1996.
security.org/space/systems/bmc3i.htm/, Oct. 2004. [31] J. Jonsson and K.G. Shin, “Robust Adaptive Metrics for Deadline
[8] E.D. Jensen, C.D. Locke, and H. Tokuda, “A Time-Driven Assignment in Distributed Hard Real-Time Systems,” Real-Time
Scheduling Model for Real-Time Systems,” Proc. IEEE Real-Time Systems, vol. 23, no. 3, pp. 239-271, Nov. 2002.
Systems Symp., pp. 112-122, Dec. 1985.
[9] R. Clark, E.D. Jensen, A. Kanevsky, J. Maurer, P. Wallace, T.
Wheeler, Y. Zhang, D. Wells, T. Lawrence, and P. Hurley, “An
Adaptive, Distributed Airborne Tracking System,” Proc. IEEE
Workshop Parallel and Distributed Systems, pp. 353-362, Apr. 1999.
[10] D.P. Maynard, S.E. Shipman, R.K. Clark, J.D. Northcutt, R.B.
Kegley, B.A. Zimmerman, and P.J. Keleher, “An Example Real-
Time Command, Control, and Battle Management Application for
Alpha,” Archons Project TR-88121, Dept. of Computer Science,
Carnegie Mellon Univ., Dec. 1988, http://www.real-time.org,
Oct. 2004.
[11] P. Li, “Utility Accrual Real-Time Scheduling: Models and
Algorithms,” PhD dissertation, Virginia Tech, 2004, http://
scholar.lib.vt.edu/theses/available/etd-08092004-230138/, Oct.
2004.
WU ET AL.: TIME/UTILITY FUNCTION DECOMPOSITION TECHNIQUES FOR UTILITY ACCRUAL SCHEDULING ALGORITHMS IN REAL-TIME... 1153
Haisang Wu is currently a PhD candidate in the E. Douglas Jensen is the chief scientist of the
Bradley Department of Electrical and Computer Information Technologies Directorate at the
Engineering at Virginia Tech. He received the MITRE Corporation. His principal focus is on
BE (cum laude) and MSE (summa cum laude) time-critical resource management in dynamic
degrees, both in electronic engineering, from distributed object systems, particularly for com-
Tsinghua University, Beijing, China, in 1999 and bat platform and battle management applica-
2002, respectively. His PhD dissertation re- tions. He directs and conducts research,
search, funded by the MITRE Corporation, performs technology transition, and consults on
focuses on energy-efficient and power-aware US Department of Defense programs. He joined
scheduling for real-time embedded systems. His MITRE from previous positions at HP, Digital
other research interests include real-time operating systems and Equipment, and other computer companies. From 1979 to 1987, he was
distributed systems, real-time and network security, and network traffic on the faculty of the Computer Science Department at Carnegie Mellon
engineering and routing. His research results have been transitioned to University, where he created and directed the largest academic real-
programs MITRE is engaged in for the US Department of Defense. He is time research group of its time. Prior to that, he was employed in the
a student member of the IEEE. real-time computer industry, where he engaged in research and
advanced technology development of distributed real-time computer
Binoy Ravindran is an associate professor in systems, hardware, and software. He is considered one of the original
the Bradley Department of Electrical and Com- pioneers, and leading visionaries, of distributed real-time computer
puter Engineering at Virginia Tech. He is systems, and is widely sought throughout the world as a speaker and
fascinated and challenged by building adaptive consultant. He is a member of the IEEE.
real-time software, i.e., real-time application and
system software that can dynamically adapt to Peng Li received the BS degree in automatic
uncertainties in their operating environments, control (1997) and the ME degree in commu-
and satisfy time constraints acceptably well with nication and information systems (2000), both
acceptable predictability, according to applica- from the University of Electronic Science and
tion-specific criteria. Toward that end, he fo- Technology of China (UESTC), and the PhD
cuses on time/utility function (TUF)/utility accrual (UA) real-time degree in computer engineering from Virginia
scheduling and resource management—an adaptive time-critical re- Polytechnic Institute and State University (Virgi-
source management paradigm invented by Doug Jensen (almost 35 nia Tech). He has been a software design
years ago) and a central concept behind the Alpha distributed real-time engineer at Microsoft Corporation, Redmond,
kernel. His students have recently developed several new results on Washington, since 2004. He has authored or
TUF/UA scheduling and resource management. In particular, the new coauthored more than 20 peer reviewed publications in real-time
results include those on stochastic scheduling, distributed scheduling, scheduling, operating systems, and distributed computing. His current
energy consumption, memory management and garbage collection, and research interests include real-time systems, embedded systems,
nonblocking synchronization. Many of these new results have been operating systems, and software engineering.
transitioned for use in US Department of Defense programs. He is a
senior member of the IEEE and the IEEE Computer Society.