Partitioned Scheduling of Multi-Modal Mixed- Criticality Real-Time Systems on Multiprocessor Platforms

Size: px
Start display at page:

Download "Partitioned Scheduling of Multi-Modal Mixed- Criticality Real-Time Systems on Multiprocessor Platforms"

Transcription

1 Unversty of Pennsylvana ScholarlyCommons Departmental Papers (CIS) Department of Computer & Informaton Scence Parttoned Schedulng of Mult-Modal Mxed- Crtcalty Real-Tme Systems on Multprocessor Platforms Donso de Nz Lnh T.X. Phan Unversty of Pennsylvana, Follow ths and addtonal works at: Part of the Computer Engneerng Commons, and the Computer Scences Commons Recommended Ctaton Donso de Nz and Lnh T.X. Phan, "Parttoned Schedulng of Mult-Modal Mxed-Crtcalty Real-Tme Systems on Multprocessor Platforms", 20th IEEE Real-Tme and Embedded Technology and Applcatons Symposum (RTAS 2014). Aprl /RTAS th IEEE Real-Tme and Embedded Technology and Applcatons Symposum (RTAS 2014), Berln, Germany, Aprl Ths paper s posted at ScholarlyCommons. For more nformaton, please contact lbraryrepostory@pobox.upenn.edu.

2 Parttoned Schedulng of Mult-Modal Mxed-Crtcalty Real-Tme Systems on Multprocessor Platforms Abstract Real-tme systems are becomng ncreasngly complex. A modern car, for example, requres a multtude of control tasks, such as brakng, actve suspenson, and collson avodance. These tasks not only exhbt dfferent degrees of safety crtcalty but also change ther crtcaltes as the drvng mode changes. For nstance, the suspenson task s a crtcal part of the stablty of the car at hgh speed, but t s only a comfort feature at low speed. Therefore, t s crucal to ensure tmng guarantees for the system wth respect to the tasks crtcaltes, not only wthn each mode but also durng mode changes. Ths paper presents a parttoned mult-processor schedulng scheme for mult-modal mxed-crtcalty realtme systems. Our scheme conssts of a packng algorthm and a schedulng algorthm for each processor that take nto account both mode changes and crtcaltes. The packng algorthm maxmzes the schedulable utlzaton across modes usng the sustaned crtcalty of each task, whch captures the overall crtcalty of the task across modes. The schedulng algorthm combnes Rate-Monotonc schedulng wth a mode transton enforcement mechansm that reles on the transtonal zero-slack nstants of tasks to control low-crtcalty tasks durng mode changes, so as to preserve the schedulablty of hgh-crtcalty tasks. We also present an mplementaton of our scheduler n the Lnux operatng system, as well as an expermental evaluaton to llustrate ts practcalty. Our evaluaton shows that our scheme can provde close to twce as much tolerance to overloads (ductlty) compared to a mode-agnostc scheme. Dscplnes Computer Engneerng Computer Scences Comments 20th IEEE Real-Tme and Embedded Technology and Applcatons Symposum (RTAS 2014), Berln, Germany, Aprl Ths conference paper s avalable at ScholarlyCommons:

3 Parttoned Schedulng of Mult-Modal Mxed-Crtcalty Real-Tme Systems on Multprocessor Platforms Donso de Nz SEI, Carnege Mellon Unversty Lnh T.X. Phan Unversty of Pennsylvana Abstract Real-tme systems are becomng ncreasngly complex. A modern car, for example, requres a multtude of control tasks, such as brakng, actve suspenson, and collson avodance. These tasks not only exhbt dfferent degrees of safety crtcalty but also change ther crtcaltes as the drvng mode changes. For nstance, the suspenson task s a crtcal part of the stablty of the car at hgh speed, but t s only a comfort feature at low speed. Therefore, t s crucal to ensure tmng guarantees for the system wth respect to the tasks crtcaltes, not only wthn each mode but also durng mode changes. Ths paper presents a parttoned mult-processor schedulng scheme for mult-modal mxed-crtcalty real-tme systems. Our scheme conssts of a packng algorthm and a schedulng algorthm for each processor that take nto account both mode changes and crtcaltes. The packng algorthm maxmzes the schedulable utlzaton across modes usng the sustaned crtcalty of each task, whch captures the overall crtcalty of the task across modes. The schedulng algorthm combnes Rate-Monotonc schedulng wth a mode transton enforcement mechansm that reles on the transtonal zero-slack nstants of tasks to control low-crtcalty tasks durng mode changes, so as to preserve the schedulablty of hgh-crtcalty tasks. We also present an mplementaton of our scheduler n the Lnux operatng system, as well as an expermental evaluaton to llustrate ts practcalty. Our evaluaton shows that our scheme can provde close to twce as much tolerance to overloads (ductlty) compared to a mode-agnostc scheme. I. INTRODUCTION Today, t s common to structure the verfcaton of realtme systems based on layers of features of dfferent safetycrtcalty levels. For nstance, the automotve certfcaton standard ISO [15] dentfes four crtcalty layers (A- D) accordng to the safety crtcalty of the features. These layers are characterstcs of systems known as mxed-crtcalty systems, n whch hgher-crtcalty tasks must be gven hgher levels of assurance than lower-crtcalty tasks. At the same tme, modern real-tme systems are becomng ncreasngly adaptve. A modern car, for example, needs to adapt ts drvng mode dependng on the envronmental condtons, and each mode transton may requre actvatons of new tasks, deactvatons of exstng tasks, or changes of the crtcaltes of other tasks. Ths ncrease n safety requrements and adaptvty n real-tme systems ntroduces a new research queston: How to ensure tmng guarantees of tasks wth respect to ther crtcaltes not only n each mode, but also durng each mode transton? There exsts a rch lterature on mxed-crtcalty schedulng (e.g., [3], [4], [8], [18], [19], [23]) and mult-mode analyss (see [32] for a survey) for real-tme systems. However, to the best of our knowledge, exstng work does not consder mxed-crtcalty and mult-mode smultaneously. Ths paper ams to brdge ths gap by consderng the schedulng of mxed-crtcalty tasks n mult-modal systems. We use an automotve example that we defned out of features and drvng modes present n today s sport vehcles (e.g. actve suspenson) and real concerns from autonomous drvng researchers (e.g. pedestran detecton). Motvatng example. Consder an automotve system that executes four tasks on a two-processor platform: τ p (pedestrandetecton), τ s (suspenson-control), τ b (blnd-spot warnng), and τ a (ar-condtoner control). The system operates n three modes, Street, Hghway, IsolatedHOV 1, and the respectve crtcaltes of each task n these modes are as follows: τ p : Hgh, Low, Medum ; τ s : Low, Hgh, Hgh ; τ b : Hgh, Hgh, Low ; τ a : Low, Low, Low. In the above system, the crtcalty of a task and hence the crtcalty order between tasks changes when the system changes ts mode. Ths can lead to conflctng schedulablty requrements durng a mode transton. For nstance, τ p has hgher crtcalty than τ s n the Street mode but lower crtcalty than τ s n the Hghway mode; therefore, ensurng the schedulablty of τ p s more mportant n the Street mode, whereas guaranteeng the schedulablty of τ s s more crtcal n the Hghway mode. Ths conflct n the schedulng requrements ntroduces a new challenge: to acheve the schedulablty of τ p n the Street mode, t s necessary to delay or stop τ s durng overloads, but ths may make τ s unschedulable n the Hghway mode, f the system enters the Hghway mode after τ s has been delayed for too long. Another challenge s how to determne a good parttonng strategy that can protect hgh-crtcalty tasks from mssng ther deadlnes durng overloads. One promsng approach s to pack tasks that exhbt a mx of hgh and low crtcaltes nto each processor [19] to enable overbookng 2. However, n mult-modal systems, a packng that s desrable (.e., that enables overbookng) n one mode may become undesrable n another mode, and ths change happens dynamcally as the system executes n a sequence of modes. We demonstrate the above behavor usng the two packngs n Table I. In the table, tasks wthn each par of braces are assgned to the same processor and ther crtcaltes for each mode are shown n the correspondng mode column. It can be observed that P 1 has a good mx of hgh and low crtcaltes n the Street mode, but t has a poor crtcalty mx 1 In the IsolatedHOV mode, the vehcle travels n an solated lane, where no passng s possble. 2 Overbookng s the scheme that uses the scheduled executon budget of a hgher-crtcal task n excess of ts nomnal executon tme (.e., executon tme under overloads) to schedule lower-crtcalty tasks.

4 Mode s Crtcalty Mx Packng Street Hghway IsolatedHOV P 1 = {τ s, τ b }, {Low, Hgh}, {Hgh, Hgh}, {Hgh, Low}, {τ t, τ a} {Hgh, Low} {Low, Low} {Medum, Low} P 2 = {τ s, τ t}, {Low, Hgh}, {Hgh, Low}, {Hgh, Medum}, {τ b, τ a} {Hgh, Low} {Hgh, Low} {Low, Low} TABLE I MULTI-MODE MIXED-CRITICALITY PACKINGS ({Hgh, Hgh}; {Low, Low}) n the Hghway mode. Further, although P 1 becomes undesrable when the system swtches to the Hghway mode, t has a good crtcalty mx agan ({Hgh, Low}; {Medum, Low}) when the system enters the IsolatedHOV mode. In contrast, P 2 has a good crtcalty mx n both Street and Hghway modes, but ts crtcalty mx s worse than that of P 1 n the IsolatedHOV mode ({Hgh, Medum}; {Low, Low}) because the overloadng of τ s makes the medum-crtcalty task τ t mss ts deadlne nstead of a low-crtcalty task, as t happens n P 1. Contrbutons. Ths paper makes the followng contrbutons: We present a mult-modal task-to-processor packng algorthm that maxmzes the schedulable utlzaton across all modes. (Secton VI) We ntroduce the concept of transtonal zero-slack nstant that enables a mxed-crtcalty analyss durng mode changes, and we descrbe a method for computng these nstants. (Secton III-B) We present a mode transton enforcement scheme based on transtonal zero-slack nstants that ensures the absence of crtcalty volatons. (Secton IV) We present an mplementaton of our technque on the Lnux OS, along wth an experment llustratng ts practcalty. (Secton V) Our evaluaton on synthetc workloads shows that our schedulng scheme can save up to half the number of processors, and provdes much better protecton to hgh-crtcalty tasks durng overloads compared to a mode-agnostc scheme. (Secton VII) II. PROBLEM FORMULATION AND APPROACH OVERVIEW A. System model and problem statement A mult-modal mxed-crtcalty system s defned as S def = (Γ, P, M, Π), where Γ s the set of tasks, P s the set of processors, M s the set of modes, and Π M M s the set of mode transtons of the system. Each mode m M s assocated wth a set of tasks Γ m Γ that are actve n mode m. def Each task τ Γ s a perodc task, defned by τ = (C, C o, T, D, ζ ), where C, C o, T, and D are the nomnal executon tme, overload executon tme, perod, and relatve def deadlne of τ, respectvely. In addton, ζ = {ζ m m M τ Γ m }, where ζ m s the crtcalty of τ n mode m, for all modes m n whch τ s actve. Unlke tasks, jobs have fxed crtcaltes: the crtcalty of a job τ,k of τ s the crtcalty of τ wth respect to the mode n whch τ,k s released. Categorzaton of tasks. A task τ s called an old task of a mode transton (s, t) Π ff τ Γ s \ Γ t, a new task ff τ Γ t \ Γ s, and a persstent task ff τ Γ s Γ t. Snce the crtcalty of a persstent task τ may change across the transton, we vew t as beng made of two separate tasks, τ s and τ t, wth the same tmng parameters (C, C o, D, T ) but dfferent crtcalty: τ s has crtcalty ζ s and ts jobs are released n s but not n t, and τ t has crtcalty ζ t and ts jobs are released n t but not n s. We call the former an old-persstent task and the latter a new-persstent task of (s, t). Mode change semantcs. Each transton (s, t) Π s assocated wth a mode change request (MCR) that trggers the system to change ts current mode from s to t. We assume mmedate mode change semantcs for new tasks: as soon as the MCR of (s, t) arrves, all new tasks of the transton release ther frst jobs. In contrast, the frst job of each new-persstent task τ t of (s, t) s released exactly T tme unts from the last release of ts correspondng old-persstent task τ s pror to the MCR. Further, old and old-persstent tasks have no new releases, and jobs that have been released but not yet completed wll contnue to be executed after the mode change. We assume that MCRs may arrve at any tme; however, consecutve MCRs are separated enough so that they do not nterfere wth each other (whch s a common assumpton n exstng mult-mode work [32]). Mode transtons are nondetermnstc: f multple transtons are enabled at the same tme, the system non-determnstcally selects one. Crtcalty volaton. A crtcalty volaton s sad to occur when lower-crtcalty jobs prevent a hgher-crtcalty job from meetng ts deadlne 3 ; durng a mode transton, ths apples to only lower-crtcalty jobs that are (stll) actve after the MCR. Avodng crtcalty volatons, both wthn each mode and durng mode changes, s crucal to ensure tmng guarantees for hgher-crtcalty jobs. Objectves. Our goal s to desgn a schedulng scheme for mult-modal mxed-crtcalty systems that can maxmze the schedulable utlzaton 4 whle ensurng the absence of crtcalty volatons. Ths goal s drven by the strct rankng requrement of crtcalty: t s more mportant to guarantee the schedulablty of a hgher-crtcalty job than to guarantee the schedulablty of all of ts lower-crtcalty jobs. (As usual, a job s schedulable f ts deadlne s met, regardless of mode changes.) In ths paper, we focus on mplct deadlne tasks (.e., D = T ) for smplcty of dscusson; however, our method can easly be extended to explct deadlne tasks. B. Overvew of our approach Our mult-modal mxed-crtcalty multprocessor schedulng scheme conssts of () a mxed-crtcalty schedulng algorthm that schedules tasks on each processor, and () a mult-modal 3 Ths can be caused by a crtcalty nverson, whch s sad to occur when a lower-crtcalty job prevents a hgher-crtcalty job from executng. 4 Schedulable utlzaton s defned as the maxmum utlzaton under whch an algorthm can guarantee the deadlnes of any optmally-schedulable task, e.g., the schedulable utlzaton bound of the Rate-Monotonc algorthm s ln 2 for mplct deadlne perodc tasks.

5 bn-packng algorthm that assgns tasks to processors. We brefly ntroduce both below. The mxed-crtcalty schedulng algorthm schedules tasks on each processor usng a mult-mode extenson of the zeroslack rate-monotonc (ZSRM) schedulng [8]. Specfcally, jobs are scheduled accordng to the Rate-Monotonc (RM) algorthm; however, lower-crtcalty jobs wll be stopped at absolute zero-slack nstants of ther hgher-crtcalty jobs,.e., nstants from whch the hgher-crtcalty jobs must not be preempted by the lower-crtcalty jobs n order to meet ther deadlnes under an overload condton. The absolute zero-slack nstant of a job s the release tme of the job plus the (relatve) zero-slack nstant of ts task, whch s computed based on the task s (nomnal and overload) executon tmes and the nterference from hgher-prorty and hgher-crtcalty tasks. In contrast to unmodal systems, the crtcalty of a task can vary across modes; as a result, ts zero-slack nstant can be dfferent n each mode and n each mode transton. Our mxed-crtcalty schedulng scheme conssts of two phases: (1) at desgn tme, t computes the zero-slack nstants of each task n each mode (called n-mode zero-slack nstant) and n each transton (called transtonal zero-slack nstant); and (2) at runtme, t schedules tasks based on the RM algorthm, whle runnng an enforcement mechansm that stops lower-crtcalty jobs at the n-mode zero-slack nstant (when the system s n a mode) or at the transtonal zero-slack nstant (durng a mode transton) of a hgher-crtcalty job. Sectons III and IV dscuss these two phases n detal. The packng algorthm ams to maxmze the utlzaton of the system whle enablng overbookng n as many modes as possble. To acheve ths, t assgns tasks to processors based on both the tasks utlzatons n each mode and the tasks sustaned crtcaltes. Intutvely, the sustaned crtcalty of a task captures the overall crtcalty of the task across modes, whle ensurng that a hgher crtcalty s more mportant (.e., contrbutes more to the overall crtcalty) than all lower crtcaltes. Ths sustaned crtcalty provdes a unfed crtcalty value that can be used to determne how well a combnaton of tasks on a processor protects hgh-crtcalty tasks durng overloads across all modes of the system. We present the packng algorthm n Secton VI. III. MULTI-MODAL ZERO-SLACK INSTANTS A. Zero-slack nstant wthn a mode The zero-slack nstant of a task τ n a mode s, denoted by Z s, s computed n the same manner as n the sngle-mode ZSRM [8]. For convenence, we reproduce a summary of the computaton here and refer the reader to [8] for the detals. We start by restatng the schedulablty guarantee under ZSRM, as ths nfluences the amount of preempton suffered by a task. Under ZSRM, a task τ s guaranteed to execute for C o wthn ts perod T f no hgher-crtcalty task τ j executes for longer than C j. Ths guarantee has two mplcatons: Frst, τ s not guaranteed any computaton tme f any of ts hgher-crtcalty tasks τ j runs for more than C j ; as a result, n the computaton of Z s, every hgher-crtcalty task τ j s consdered to execute for only C j. Second, durng the calculaton of Z s, every task τ p wth a lower crtcalty but a hgher prorty than τ must be assumed to run possbly up to ts whole overload executon tme Cp. o Computaton of Z s. When the system s n a mode s, each job τ,k of τ executes n two states: t starts n the nomnal state, then swtches to the crtcal state when t reaches ts absolute zero-slack nstant (whch s ts release tme plus Z s). In the nomnal state, τ,k s scheduled wth all other tasks accordng to RM, regardless of ther crtcaltes; n the crtcal state, all tasks of lower crtcaltes than τ are stopped, and τ,k s scheduled wth only tasks of hgher crtcaltes, also accordng to RM. As a result, durng the nomnal state, τ,k can suffer preemptons from the nomnal nterferng taskset, denoted by Γ s,n, whch conssts of all tasks of hgher-crtcalty and all tasks of hgher-prorty and lower-crtcalty than τ n mode s. In contrast, durng the crtcal state, τ,k only suffers preemptons from the crtcal nterferng taskset, denoted by Γ s,c, whch conssts of only hgher-crtcalty tasks of τ n mode s. Furthermore, observe that the nterference caused by a lower-prorty hgher-crtcalty task τ j can only come from a sngle job τ j,h of τ j (snce the tasks are scheduled under RM and thus, τ j would have a longer perod than τ ); hence, we only need to account for ths nterference once. Snce τ j,h mght arrve durng ether executon state of τ,k, the worst case happens when τ j,h arrves durng the crtcal state of τ,k, as ths would be more lkely to make τ,k unschedulable. Based on the above nterference on τ, we can compute the zero-slack nstant Z s by frst assumng that τ runs completely n the crtcal state. We then compute the amount of slack (.e., the sum of the dle tme slots) n the actve nterval from the release tme to τ s deadlne, assumng that t runs n the nomnal state. Ths slack s used to move part of the executon of τ from the crtcal state to the nomnal state (thus, deferrng the Z s nstant). We then repeat ths process untl no more slack s found n the nomnal state, and the fnal value of Z s s the zero-slack nstant of τ n mode s. Preventng back-to-back hgh-prorty preemptons. In [14] the authors ponted out the possblty of back-to-back preemptons n the orgnal ZSRM [8]. Ths back-to-back preempton can be prevented wth a modfcaton to the orgnal enforcement n [8], whch s descrbed n Appendx A. B. Zero-slack nstant n a mode transton (s, t) Let τ be a task that s actve n mode s or n mode t,.e., τ Γ s Γ t. Observe that durng a mode transton (s, t), jobs of τ may experence nterference from both jobs that are released n mode s and jobs that are released n mode t. Therefore, t s not possble to ensure that τ does not experence a crtcalty volaton based solely on Z s and Z t. In ths secton, we propose a new concept, called transtonal zero-slack nstant, that can be used to guarantee the absence of crtcalty volatons for jobs durng a mode transton. Frst, we defne the transtonal nterval of (s, t) as the tme nterval from the nstant the MCR of (s, t) occurs untl

6 the earlest nstant at whch all jobs released n mode s have ether completed ther executons or mssed ther deadlnes. By defnton, the length of the transtonal nterval of (s, t) s always upper bounded by the maxmum relatve deadlne of all tasks that are actve n mode s (.e., max τ Γ s D ). Defnton 1. The transtonal zero-slack nstant of τ n a transton (s, t) s the maxmum amount of tme for whch any job τ,k of τ can be preempted by lower-crtcalty jobs wthout makng τ,k mss ts deadlne. The (absolute) transtonal zero-slack nstant of a job τ,k s ts release tme plus the transtonal zero-slack nstant of τ. Recall from Secton II that, f τ s a persstent task of (s, t), ts crtcalty may change across the transton. Therefore, we consder t as two separate tasks: an old-persstent task, whch has the old crtcalty and whose jobs are released n mode s, and a new-persstent task, whch has the new crtcalty and whose jobs are released n mode t. Snce the old-persstent task and the new-persstent task may have dfferent sets of lowercrtcalty tasks, we wll compute two dfferent transtonal zero-slack nstants for each persstent task τ of (s, t): the frst, denoted by Z st,old, wll be used to protect jobs of τ that are released before the MCR; and the second, denoted by Z st,new, wll be used to protect jobs of τ that are released after the MCR. 5 In contrast, f τ s an old task or a new task of (s, t), then t has one transtonal zero-slack nstant Z st, whch wll be appled to all of ts jobs. To compute these transtonal zero-slack nstants, we frst dentfy the nterferng jobsets of τ durng the transtonal nterval of (s, t). C. Interferng jobsets of τ durng a mode transton (s, t) Let τ,k be any job of τ that s actve durng the transtonal nterval of (s, t). Under our mult-modal mxed-crtcalty schedulng, τ,k operates n two states: t starts n the nomnal state and, when ts transtonal zero-slack nstant s reached, t swtches to the crtcal state. In the nomnal state, τ,k s scheduled wth all actve jobs; n the crtcal state, t s scheduled wth only hgher-crtcalty jobs. Below, we quantfy the jobs that nterfere wth τ,k n each state. Note that we only consder jobs whose release tmes or deadlnes are wthn τ,k s lfetme (wth maxmum length of T ). Interferng jobset of τ,k n the crtcal state: Its nterferng jobset effectvely conssts of only hgher-crtcalty jobs that are (stll) actve after the MCR. In other words, ths set conssts of () at most one job of each hgher-crtcalty task τ j of τ n mode s (.e., τ j Γ s,c ), and () all jobs of each hghercrtcalty task τ h of τ n mode t (.e., τ h Γ t,c ). Interferng jobset of τ,k n the nomnal state: The jobs that nterfere wth τ,k n ts nomnal state depends on τ s type: If τ s an old or old-persstent task: Then τ,k s released n mode s, and thus ts nterferng jobset conssts of () all jobs of each task τ j of hgher-crtcalty or hgher-prorty than τ n mode s (.e., τ j Γ s,n ) that are released before 5 For smplcty of exposton, we use the same notaton τ for both of ts correspondng old-persstent and new-persstent tasks, but dstngush the two by explctly referrng to ther task types. the MCR and () all jobs of each task τ h of hghercrtcalty or hgher-prorty than τ n mode t (.e., τ h Γ t,n ) that are released after the MCR. If τ s a new or new-persstent task: Then τ,k s released n mode t, and thus ts nterferng jobset conssts of () at most one job of each task τ j Γ s,n and () all jobs of each task τ h Γ t,n. Based on the above observatons, we can derve the maxmum crtcal/nomnal nterferng jobset of each task τ (to be appled to ts jobs n ther crtcal/nomnal states) by takng the largest set of nterferng jobs that any job of τ can experence durng ts lfetme. Algorthm 1 gves the pseudocode for computng the crtcal/nomnal nterferng jobset for each task τ that s actve durng the mode transton (.e., τ Γ s Γ t ) based on ts type. Specfcally, for each old or new task (Lnes 2 4 and 10 12), the algorthm computes one par of nterferng jobsets, J,c st, J,n st, to be used for computng Z st. In contrast, for each persstent task (Lnes 5 9), the algorthm computes two pars of nterferng jobsets, J st,old,c, J st,old,n and J st,new,c, J st,new,n, to be used for computng Z st,old and, respectvely. Z st,new n Algorthm 1 ComputeInterferngJobSets(Γ s, Γ t ) 1: for all τ Γ s Γ t do 2: f τ Γ s \Γ t then 3: J st,c GetOneJobPerTask(Γs,c ) GetJobsInInterval( 0, T, Γ t ),c 4: J st,n GetMaxHybrdJobSet(, Γ s,n, ) Γt,n 5: f τ Γ s Γ t then 6: J st,old,c GetOneJobPerTask ( Γ s (,c) GetJobsInInterval 0, T, Γ t ),c 7: J st,old,n GetMaxHybrdJobSet (, Γ s,n, ) Γt,n 8: J st,new,c GetOneJobPerTask ( Γ s (,c) GetJobsInInterval 0, T, Γ t ),c 9: J st,new,n GetOneJobPerTask ( Γ s (,n) GetJobsInInterval 0, T, Γ t ),n 10: f τ Γ t \Γ s then 11: J st,c GetOneJobPerTask( Γ s,c) GetJobsInInterval ( 0, T, Γ t,c 12: J st,n GetOneJobPerTask( Γ s,n) GetJobsInInterval ( 0, T, Γ t,n Algorthm 2 GetMaxHybrdJobSet (, Γ s,n, ) Γt,n 1: V s,n GetSlackVector(, Γ s,n, ) Zs 2: V t,n GetSlackVector(, Γ t,n, ) Zt 3: MCRI max 0 4: mnslack 5: SlackStarts GetSlackStartngs ( V s,n, V t ),n 6: for all p SlackStarts do 7: currentslack GetSlackInInterval ( 0, p, V s,n) + GetSlackInInterval ( p, T, V t ),n 8: f currentslack < mnslack then 9: mnslack currentslack 10: MCRI max p 11: return GetJobsInInterval ( 0, MCRI max, Γ s,n) GetJobsInInterval ( MCRI max, T, Γ t ),n In Algorthm 1, the crtcal nterferng jobsets for all tasks and the nomnal nterferng jobsets of new and new-persstent tasks are computed based drectly on the above dscusson. However, computng the nomnal nterferng jobset of an old or old-persstent task (Lnes 4 and 7) s more challengng, snce ths set hghly depends on the nstant at whch the MCR occurs. Snce ths nstant s unknown at desgn tme, we frst compute the worst-case MCR nstant, MCRI max, that leads to the maxmum nterference on a job of τ durng ts nomnal and crtcal states, and then use MCRI max to ) )

7 derve the worst-case nterferng jobset. Ths s done va the functon GetMaxHybrdJobSet, shown n Algorthm 2. (The key functons n Algorthm 2 are explaned n Appendx B.) Based on the computaton of the nterferng jobsets of τ, we can now derve ts transtonal zero-slack nstant(s). D. Computaton of transtonal zero-slack nstants Algorthm 3 shows the pseudocode for computng the transtonal zero-slack nstant Z st of each task τ, based on ts nterferng jobsets. Here, taskset (Lne 5) s the set of old, old-persstent, new, and new-persstent tasks of (s, t). That s, we mantan n taskset two separate tasks, old-persstent and new-persstent, for each persstent task of (s, t). Thus, the algorthm wll compute two separate transtonal zero-slack nstants for each persstent task of (s, t), as dscussed earler. Note that we use J,n st st and J,c to refer to the nomnal and crtcal jobsets of every task τ n taskset, ncludng when τ s an old-persstent task or a new-persstent task. Algorthm 3 ComputeTranstonalZeroSlackInstants(s, t) 1:, Z st,1 0 2: ComputeInterferngJobSets(Γ s, Γ t ) 3: repeat 4:, Z st,0 Z st,1 5: for all τ n taskset do 6: V st,n 7: V st,c 8: Z st,1 9: untl, Z st,0 10:, Z st st GetSlackVector(, J,n, Zst,0 ) st GetSlackVector(, J,c, Zst,0 ) GetSlackZeroInstant(, V st,n, V st,c, Zst,0 ) Z st,1 = Z st,1 At a hgh level, Algorthm 3 works as follows. It begns wth the worst-case assumpton that there s no slack n the nomnal state of each task, and each task always needs to run n the crtcal state. Then, t starts movng computaton tme from the crtcal state to the nomnal state as we dscover slack n the nomnal state (usng Algorthm 4). It then repeats the process wth the newly-computed zero-slack nstant. Note that, even though we only calculate the nterferng jobset at the begnnng of the algorthm, the proportons of computaton of the nterferng jobs that occur durng the nomnal state (C n ) and durng the crtcal state (C c ) change as we recalculate the zero-slack nstants (as we wll show n Algorthm 4). The algorthm converges when t cannot move the zero-slack nstant of any task towards ts deadlne. To acheve the above, the algorthm mantans for each task τ two varables, Z st,0 and Z st,1, whch store the zero-slack nstant values before and after an teraton, respectvely. Both Z st,0 and Z st,1 are ntalzed to zero (to ndcate that there s no slack n the nomnal state). In each teraton (Lnes 3 9), the algorthm frst calculates the slack vectors for τ n the nomnal and crtcal states (V,n st st and V,c ), based on τ s nomnal and crtcal nterferng jobsets (Lnes 6 7). Each slack vector contans a sequence of slack regons ordered by tme; each slack regon conssts of a startng nstant and a duraton. Based on the obtaned slack vectors, the algorthm then computes a new zero-slack nstant (Z st,1 the functon GetSlackZeroInstant(, V,n, V,c, Z st,0 ) for τ usng ). Wth the new zero-slack nstant, the algorthm proceeds to the next teraton and contnues n the same manner untl t converges (, Z st,0 = Z st,1 ). Algorthm 4 GetSlackZeroInstant(, V n, V c, t 0 ) 1: C c Co ; Cn 0 2: repeat 3: t 1 StartOfTralngSlack(, C c, Vc) 4: f t 1 0 and t 1 t 0 then 5: k u GetSlackInInterval(0, t 1, V n) C n 6: k u max(mn(k u, C c ), 0) 7: C c Cc ku 8: C n Cn + ku 9: else 10: k u 0 11: untl k u = 0 12: return t 1 Algorthm 4 shows the pseudocode for the functon GetSlackZeroInstant(, V n, V c, t 0 ). Intutvely, ths functon dvdes the overload executon tme C o of τ nto two parts: C c, the executon tme n the crtcal state, and Cn, the executon tme n the nomnal state. Intally, all executon tme s n the crtcal state (C c = C o ) and the crtcal state starts at tme t 0. The functon then repeatedly () computes a new startng tme t 1 for the crtcal state (Lne 3) usng StartOfTralngSlack(, C c, V c), whch gves the latest nstant where there are at least C c unts of slack wthn V c (the slack vector of τ n the crtcal state) that s before T, and then () moves the correspondng amount of executon tme (k u n Lnes 5 6) from the crtcal state to the nomnal state (Lnes 7 8). The algorthm termnates when no more computaton can be moved (k u = 0), and t returns the fnal value of t 1 as the new value for Z st,1 n Lne 8, Algorthm 3. Example 1. To llustrate the above computaton, consder a system wth two modes, s and t, that executes three (persstent) tasks: τ 1 = ( T 1 = 4, C 1 = 2, C1 o = 2.25, ζ1 s = 1, ζ1 t = 3 ) ; τ 2 = ( T 2 = 8, C 2 = 1, C2 o = 1, ζ2 s = 3, ζ2 t = 1 ) ( ; and τ 3 = T3 = 16, C 3 = 1, C3 o = 7, ζ3 s = 2, ζ3 t = 2 ). Recall that n the transton (s, t), each task τ has two transtonal zero-slack nstants, τ st,old and τ st,new. We wll llustrate the computaton of the transtonal zero-slack nstant Z st,old 3 of τ 3. Fgures 1(a), 1(b) and 1(c) depct the tmelne of τ 3 wth ts zero-slack nstants n mode s, n mode t, and n the transton (s, t), respectvely. A sold box represents an actual executon, whereas a dashed box represents an executon that would have happened f the task had not been preempted or stopped. To compute the nterferng jobsets of the old-persstent task τ 3 (c.f. Algorthm 1), we frst derve the worst-case MCR nstant MCRI max that leads to the maxmum nterference on τ 3 durng ts nomnal state and ts crtcal state (c.f. Algorthm 2). It can be observed from Fgures 1(a) and 1(b) that, durng the nomnal state, τ 3 suffers more nterference from τ 1 n mode s than n mode t. Ths s because τ 1 has lower crtcalty than τ 3 n mode s and thus, ts nterference ncludes all of ts overload executon tme (C1 o = 2.25); however, t has hgher crtcalty than τ 3 n mode t and hence, ts nterference ncludes only ts nomnal executon tme (C 1 = 2). Observe also that the nterference from τ 2 durng τ 3 s nomnal state s the same n

8 1/2 1/2 τ 1 LC 21/4 21/4 21/4 1/4 2 τ 1 HC τ 1 LC 21/4 21/4 11/2 MCRImax(10) 2 HC τ 2 HC 1 1 τ 2 LC 1 1 τ 2 HC 1 1 LC τ MC 3/4 13/4 3/ / τ MC τ MC 3/4 13/ MC 8 16 Z s 3 (121/4) t Z (10) 3 Z3 st,old (91/2) (a) Source Mode Tmelne (b) Target Mode Tmelne (c) Mode Transton Tmelne Fg. 1. Transtonal Zero-Slack Computaton Example both modes (snce C o = C ). Therefore, the nterference from τ 1 and τ 2 n mode s s larger than ther nterference n mode t. On the contrary, n the crtcal state, τ 3 experences more nterference n mode t than n mode s, because τ 2 s stopped n mode t (whch frees only 1 unt of executon) whereas τ 1 s stopped n mode s (whch frees 2 unts of executon). The above nterference patterns lead to the worst-case MCR nstant at the zero-slack nstant of τ 3 n mode t (MCRI max = 10), as shown n Fgure 1(c). Based on the obtaned MCRI max and the correspondng nterferng jobset of τ 3 n the nomnal state, usng Algorthm 3 we can derve the transtonal zeroslack nstant of τ 3 (Z st,old 3 = 9.5). IV. RUN-TIME SCHEDULING WITH ENFORCEMENT On each processor, our mult-modal mxed-crtcalty scheduler schedules tasks accordng to RM, and t uses an enforcement mechansm that stops (or drops) jobs based on the n-mode and transtonal zero-slack nstants of tasks. (The enforcement stops or drops a job followng the strategy n Appendx A, but we smply use the term stop for convenence.) Recall from the defnton of the transtonal nterval of a transton (s, t) that, from the end of the transtonal nterval onward, the system contans only jobs of new or new-persstent tasks (released n mode t). It can easly be shown that, f a job of τ s released after or at the end of the transtonal nterval of (s, t), the maxmum nterference t experences over any nterval s the same as the maxmum nterference a job of τ would have experenced n an nterval of the same length f the system had operated n a sngle mode t. Therefore, we can safely use the zero-slack nstants of tasks n mode t for the enforcement after the transtonal nterval; consequently, the transtonal zero-slack nstant s only applcable to jobs that are released before the end of the transtonal nterval of (s, t). Enforcement n a mode. After the system has transtoned to a mode s and the transtonal nterval has ended, enforcement works as follows: whenever an actve job of each task τ reaches ts n-mode zero-slack nstant Z s, all released jobs of tasks wth lower-crtcalty than τ n mode s are stopped. Enforcement upon an MCR. When the system s n mode s and the MCR assocated wth an outgong transton (s, t) arrves, the system wll enter the new mode (c.f. Secton II) and perform the enforcement nstantaneously. The enforcement s only performed on jobs that are actve durng the transtonal nterval of (s, t), and the specfc acton depends on whether the job arrves before or after the MCR. Specfcally, let MCRI be the arrval tme of the MCR wth respect to the release tme of an actve job τ,k durng the transtonal nterval. Then, the enforcement on τ,k works based on the transtonal zero-slack nstant Z st of τ,k as follows: If MCRI Z st, then the system mmedately stops all the jobs wth lower-crtcalty than τ,k. 6 If MCRI < Z st, then the system wats untl the transtonal zero-slack nstant Z st to stop all jobs wth lowercrtcalty than τ,k. The next lemma states the correctness of the enforcement; ts proof s avalable n Appendx C. Lemma IV.1. The above run-tme enforcement guarantees that no job experences crtcalty volatons. V. IMPLEMENTATION We mplemented our mult-modal zero-slack scheduler n a Lnux kernel module along wth a user-level lbrary to support the development of mult-modal mxed-crtcalty systems. An emprcal evaluaton of the run-tme overhead of our mplementaton s avalable n Appendx D. A. Modal system Our user-level lbrary provdes abstractons to buld modal systems that consst of a set of modal tasks and a system mode transton manager. A modal task, n turn, s composed of a collecton of modal job functons (one for each mode), a set of mode transtons, and an ntalzaton functon (nt()). A modal task s created by callng the functon start_modal_task() wth a modal task structure that contans ponters to the mode job functons, the nt() functon, and the mode transtons (to be dscussed shortly). Ths lbrary functon forks a process and returns the process ID of the newly-created process. The man body of a modal task frst calls the nt() functon and then nstalls the mode transton sgnal handler. After that, t enters an nfnte loop that executes the job functon repeatedly. In each teraton, the loop frst calls the job functon and then wats for the arrval of the next perod (wat_for_next_perod()) before callng the job functon agan 7. The sgnal handler functon s hdden 6 Note that f MCRI > Z st and the crtcalty of τ,k s lower than that of some new job(s) released after the MCR, then τ,k may not have enough tme to fnsh by ts deadlne f t executes for all of ts C o, due to nterference of these hgher-crtcalty new job(s). However, snce all actve lower-crtcalty jobs of τ,k are stopped, τ,k wll not experence a crtcalty volaton. 7 Whle our current mplementaton wats for the next perod, ths can be easly changed to a generc arrval trggerng functon that wats for external events, such as nterrupts.

9 perod elapsed & mode =1 watng next perod wat next perod mode 1 functon runnng wat next perod perod elapsed & mode =2 mode 2 functon runnng (a) Lbrary Fg. 2. sgnal arrved/ mode := sgnal_param sgnal handler perod elapsed watng next perod no mode change no suspenson requested check mode change runnng wat perod mode change / change reserve check suspenson (b) Scheduler Mode Change State Machnes mode change mode=suspend suspend mode change mode!= suspend change reserve suspenson requested nsde the runtme lbrary; t only changes the mode varable to the mode number that s sent by the mode transton manager. We make two mportant observatons about the mode change sgnal handlng: Frst, the sgnal handler runs nsde the modal task process under the schedulng parameters of that process; hence, t does not nterfere wth other tasks. Second, for tasks that are currently actve, the new mode s not effectve untl the next arrval of the job; that s, the lfetme of the current job (from the current tme to the next arrval) s not modfed. Instead, the new mode s regstered wthn the sgnal handler, whch wll be used upon the next arrval (wthn the wat_for_next_perod() functon). At the next arrval, the new job functon s executed, and the kernel scheduler then wats for the new perod of the task. 8 Ths behavor s llustrated by the fnte state machnes n Fgure 2(a). Mode transtons. Task mode transtons are part of the modal task structure, whch contans, for each transton, the source mode number, the target mode number, and the computed transtonal zero-slack nstant(s) (c.f. Secton III-B). The fnal modal system s composed of system modes and system mode transtons controlled by the system mode manager. System modes are composed of a collecton of task modes that each contan a process ID and a mode number. System mode transtons bundle tasks mode transtons. The system mode manager trggers system mode transtons by sendng mode swtch sgnals to each of the tasks, and then nstructs the kernel scheduler to start the transton, whch actvates the correspondng transtonal zero-slack nstants. The system mode manager runs as a persstent task across all modes, wth the hghest crtcalty and hghest prorty. B. Modal kernel scheduler The kernel scheduler s a reservaton-based scheduler that assgns modal zero-slack reserves to each task. A modal reserve s a collecton of regular zero-slack reserves along wth transtons. A modal reserve s frst created as an empty reserve, and then zero-slack reserves are created and added to the modal reserve. Once all the modal reserves have been created, the mode transtons are added wth ther correspondng transtonal zero-slack nstant(s). Fnally, a modal reserve s attached to a task upon ts creaton. A specal SUSPENSION mode s used to represent that 8 Our mplementaton allows tasks to change ther perods across modes. a task s nactve. The kernel scheduler uses ths mode to suspend the task when t needs to be dsabled n a partcular system mode. A task transtonng to the suspenson mode s dsabled at the next perod arrval (as expected). However, when a task transtons from the suspenson mode to an actve mode, the task s actvated mmedately, as requred by our mode change semantcs (c.f. Secton II). Ths s llustrated by the fnte state machne n Fgure 2(b). Our mplementaton uses a kernel scheduler thread that changes the prortes and the schedulng polcy of the tasks n response to schedulng events and the current mode, followng the strategy of the non-ntrusve kernel module n [9]. Ths kernel thread s necessary to avod changng the prorty nsde the tmer handler (trggered by an nterrupt) n the kernel module to avod deadlocks, snce changng the prorty modfes the prorty queues. Ths technque s also used n Lnux/RK [26] and a smlar kernel module scheduler n [17]. C. Mode change experment tmelne To show the effect of mode changes on our system, we created an experment wth three tasks (see Table II): a Suspenson task (τ s ), a Pedestran Detecton task (τ p ) and a (Coordnated) Cruse Control task (τ c ). Each task can run n two modes, Low Speed and Hgh Speed. We desgned the experment to focus our attenton on the zero-slack nstant of the task τ s, whch was calculated at 13s for both the mode transton and the target mode (Hgh Speed). Task T (s) C(s) C o (s) Crtcalty Low Speed Suspenson (τ s) Pedestran Detect. (τ p) Coord. Cruse Ctl. (τ c) TABLE II SAMPLE EXPERIMENTAL CAR TASKSET Fg. 3. Mode Change Tmelne (ms) Hgh Speed Fgure 3 shows the tmelne of a change from the Low Speed mode to the Hgh Speed mode n the expermental task. The X-axs shows tme (n msec), and the Y -axs shows the task that s actve at the correspondng tme (e.g., τ p s actve from 0 to 2000, as s shown by the sold bar that rses to τ p s marker). The mode change was requested roughly at tme t = 15s, whch s close to the end of the frst hyperperod (at t = 16s). We observe the followng effect of ths mode change request from the tmelne: Even though all old jobs have fnshed, the new jobs are only released at the next perods of the tasks (at t = 16s); ths s consstent wth our mode change semantcs for persstent tasks. In addton, when task τ s overruns ts zeroslack nstant at t = 29s (= 16s +13s), task τ p s stopped to let

10 τ s complete; ths llustratres the effect of the enforcement. It s worth hghlghtng that, around the same relatve tme from the start of the frst hyperperod n the source mode (.e., at t = 13s), τ p was not preempted by τ s, because τ p has hgher crtcalty and hgher prorty than τ s n the source mode. VI. MULTI-MODAL MIXED-CRITICALITY BIN-PACKING As dscussed n Secton II-B, the man objectve of our packng algorthm s to maxmze the utlzaton of the system whle enablng overbookng n as many modes as possble. Towards ths, we frst defne the sustaned crtcalty of a task τ as the overall crtcalty of the task across all modes, gven by: def = ( ) ζ m M + 1, (1) ζ m M where M s the set of modes of the system. Informally, each summand n Eq. (1) captures the degree of mportance (n terms of schedulablty requrements) of the task s crtcalty n each mode m. It s defned as the number of modes plus one to the power of the task s crtcalty n mode m, so as to preserve the strct rankng of crtcalty (.e., a hgher-crtcalty task s more mportant than any number of lower-crtcalty tasks). In addton, we defne the domnant crtcalty of τ as ts hghest crtcalty n all modes,.e., ζ = max m M ζ m. Algorthm 5 Mult-modal mxed-crtcalty packng algorthm. { 1: P {p 1, p 2,..., p k }, where k = max m M τ Γ m C } T 2: Γ rest 3: for all τ Γ n non-ncreasng ζ and non-ncreasng Co T do 4: deployed false 5: for all p j P n non-ncreasng fullness level of p m j where ζ m = ζ do 6: f overloaded(τ ) schedulable n overloaded(p j) then 7: deployed true 8: break 9: f deployed then 10: Γ rest Γ rest τ 11: for all τ Γ rest do 12: deployed false 13: whle deployed do 14: for all p j P n non-ncreasng fullness level of packed(p m j ) where ζ m = ζ do 15: f overloaded(τ ) s schedulable n packed(p j) then 16: deployed true 17: break 18: whle deployed do 19: P P new(p new) 20: f overloaded(τ ) schedulable n overloaded(p new) then 21: deployed true At a hgh level, the packng s performed by verfyng that the total requrements of the tasks allocated to a processor do not exceed the capacty of that processor. For ths, we descrbe the fullness level of a processor j as a vector p j = p 1 j, p2 j,..., p M j, where p m j s the fullness level of the processor n mode m, all for m M. The fullness vectors of the processors are then used together wth the sustaned and domnant crtcaltes of the tasks to order processors and tasks n our allocaton algorthm. We refer to ths algorthm as vector Mxed-Crtcalty Packng (vmcp), snce t s based on vector packng, wth processors modeled as vectors of capactes (one for each mode) and tasks modeled as vectors of requrements. The pseudocode for vmcp s shown n Algorthm 5. Algorthm 5 starts by creatng an ntal set of processors P whose combned capacty s equal to the largest taskset utlzaton across all modes (Lne 1). It then proceeds to the frst stage (Lnes 2 10), n whch t attempts to assgn tasks to the processors n a non-ncreasng order of sustaned crtcalty and utlzaton, assumng that each task τ runs for ts overload executon tme C o. In ths order, each τ s tred on each of the processors n P, ordered n non-ncreasng levels of fullness n the mode m wth the domnant crtcalty of τ (.e., ζ m = ζ ). The tasks that cannot be ftted on these processors are then set asde n a set Γ rest to be deployed n the second stage. In the second stage (Lnes 11 21), the algorthm deploys the tasks n Γ rest to the processors n P usng the same orders of tasks and processors as n the frst stage, but assumng that the tasks that have already been deployed n the frst stage only run for ther nomnal executon tmes (referred to as packed() n Lnes 14 15). If a task cannot be ftted onto any processor, a new processor s added (Lne 19), and the algorthm then tres to deploy ths task on the new processor, assumng that the task overruns (Lnes 20 21). It can be observed that the resultng packng always ensures all tasks are schedulable f the system does not overload. Note that Algorthm 5 follows a best-ft strategy when assgnng a task to a processor. However, t can easly be modfed to use other varants, such as frst-ft, worst-ft, etc. Due to space constrants, we omt them here. VII. EVALUATION In ths secton, we present an evaluaton of the proposed vmcp algorthm usng synthetc real-tme workload. Our goal s to evaluate how well the vmcp performs across dfferent crtcalty varatons of the system compared to a baselne mode-agnostc vector packng algorthm [7]. (To the best of our knowledge, there exsts no mode-aware packng algorthm for mult-modal mxed-crtcalty systems). A. Evaluaton metrcs: ductlty and resource use Observe that the conventonal schedulablty metrc cannot fully characterze the schedulng performance n a mxedcrtcalty system, snce two schedulers may both feasbly schedule the system under nomnal executon but one may guarantee more schedulable hgher-crtcalty tasks than the other under an overload condton. To address ths, we adapt the ductlty metrc [19] to evaluate the capacty of a scheduler n protectng hgh-crtcalty tasks durng overloads, whle extendng ths metrc to the mult-modal settng. Formally, let k be the number of dstnct crtcalty levels of the tasks n the system, and assume wthout loss of generalty that all tasks have crtcaltes between 1 and k. To defne the ductlty of a schedule n a mode, we consder all possble overloadng scenaros of tasks n each crtcalty level j. Each scenaro O l s a k-tuple O l = O l,k,..., O l,1, where O l,j = 0 f no tasks wth crtcalty j overload, and O l,j = 1 otherwse. (Snce there are k crtcalty levels, there are 2 k scenaros n total.) Correspondng to each overloadng scenaro O l, we defne for every crtcalty level j a ductlty value d l,j, whch

11 characterzes the possblty that all tasks wth crtcalty j meet ther deadlnes under the overloadng scenaro O l. That s, for all 1 j k, d l,j = 1 f all tasks wth crtcalty j are guaranteed to meet ther deadlnes under the overloadng scenaro O l, and d l,j = 0 otherwse. The ductlty of a schedule n a mode m can then be computed by aggregatng all of ts ductlty values d l,j n mode m, scaled by an order of magntude between crtcalty levels: ductlty(m) = k j=1 ( 2 k l=1 d l,j 2 kj + 1 The overall ductlty of a schedule of a mult-modal system s then gven as the sum of all the ductltes ductlty(m) for all modes m. It can be observed that ths ductlty metrc preserves the strct rankng semantcs of crtcalty, whle enablng comparson between dfferent schedules durng overloads. B. Workload In our experments, we frst generated fve dfferent types of harmonc perods 9, sampled from a unform dstrbuton between 100 and 1000, whch were used for all the tasks n our experments. For each generated perod, we selected the overloaded executon tme unformly at random between 10% and 30% of the perod. Fnally, the nomnal executon tme was selected unformly at random between 50% and 100% of the overloaded executon tme. Ths enables us to explore tasksets that do not suffer the nternal fragmentaton produced by heavy tasks (e.g., a task that can consume close to, or over 50% of the processor and ends up beng packed on a processor by tself) but stll allows for a reasonable amount of overbookng due to the dfference between the nomnal and the overload executon tme. Next, we generated all possble varatons of crtcalty-toprorty relatonshps. These relatonshps were encoded n a crtcalty vector, whose frst, second, and thrd entry represent the crtcalty assgned to the task wth the hghest, secondhghest, and lowest prorty, respectvely. In our experments, we used three modes and generated one crtcalty vector per mode. These vectors are shown on the X-axs of Fgure 4. (In the fgure, we only show a subset of the generated crtcalty vectors to hghlght nterestng cases where tasks wth dfferent prortes have dfferent crtcaltes.) C. Evaluaton results Resource savngs. Fgure 4 shows the number of processors needed under the vmcp algorthm and under the baselne vector packng wth respect to dfferent crtcalty vectors. The data presented n the fgure s the average of 100 experments. We observe the followng from the results: Frst, vmcp s able to reduce the number of requred processors, ndependent of the crtcalty vector. Ths s because vmcp s able to follow the sze of the tasks and the fullness of the processors accordng to the crtcalty, whereas the baselne algorthm frequently selects the wrong crtcalty (as t s agnostc to 9 Note that t s common for a system to have harmonc perods, such as Boeng avoncs [11] and ARINC 653 [1] systems. ). Number of Processors {0,1,2},{0,1,2},{0,1,2} Fg. 4. {0,1,2},{2,1,0},{0,2,1} {0,2,1},{0,2,1},{0,2,1} Vector Packng {1,0,2},{1,0,2},{1,0,2} {1,2,0},{1,2,0},{1,2,0} vmcp {2,0,1},{2,0,1},{2,0,1} {2,1,0},{2,1,0},{2,1,0} {2,1,0},{0,1,2},{2,0,1} vmcp vs Vector Packng Across Crtcalty Varatons crtcalty changes across modes). Second, unlke vmcp, the baselne packng uses more or fewer processors dependng on the algnment of the overall processor fullness across modes and the crtcalty of the task beng deployed; ths s the case for the second and the last columns. Fnally, n most crtcalty varatons, vmcp s able to reduce the number of processors by half, except for the two of the cases shown n the fgure (correspondng to the second and the last crtcalty vectors). Ductlty. In the second experment, we reduced the number of processors that the two packng algorthms were allowed to allocate, to compare how well they can preserve ductlty. Fgure 5 shows the ductlty values (normalzed to the maxmum possble for the taskset) that vmcp and the baselne vector packng algorthm can acheve for the same taskset f the number of processors that they are able to allocate s reduced. Ths fgure presents the average of 100 data ponts wth tasksets generated n the same fashon as n the prevous experment, wth the crtcalty vector {{2, 1, 0}, {0, 1, 2}, {2, 0, 1}}. Normalzed Ductlty Vector Packng vmcp Number of Processors Fg. 5. Ductlty vs. Number of Processors We can make three mportant observatons from Fgure 5: Frst, vmcp keeps a hgher ductlty n all data ponts. Second, the gap between vmcp and the normal vector packng ncreases at frst but later on becomes smaller, as the number of processors becomes too small to produce a sgnfcant dfference. Fnally, vmcp can acheve up to nearly twce the ductlty obtaned by the baselne vector packng algorthm. VIII. RELATED WORK Tmng analyss of mult-mode systems has been extensvely studed wthn the context of unprocessors (see e.g., [10], [12], [13], [27] [30], [32], [33], [35], [36]) and t has recently extended to multprocessor platforms [20], [21], [24], [25]. The prmary focus of ths lne of work has been on desgnng

Partitioned Scheduling of Multi-Modal Mixed-Criticality Real-Time Systems on Multiprocessor Platforms

Partitioned Scheduling of Multi-Modal Mixed-Criticality Real-Time Systems on Multiprocessor Platforms Parttoned Schedulng of Mult-Modal Mxed-Crtcalty Real-Tme Systems on Multprocessor Platforms Donso de Nz SEI, Carnege Mellon Unversty Lnh T.X. Phan Unversty of Pennsylvana Abstract Real-tme systems are

More information

Real-Time Systems. Multiprocessor scheduling. Multiprocessor scheduling. Multiprocessor scheduling

Real-Time Systems. Multiprocessor scheduling. Multiprocessor scheduling. Multiprocessor scheduling Real-Tme Systems Multprocessor schedulng Specfcaton Implementaton Verfcaton Multprocessor schedulng -- -- Global schedulng How are tasks assgned to processors? Statc assgnment The processor(s) used for

More information

Embedded Systems. 4. Aperiodic and Periodic Tasks

Embedded Systems. 4. Aperiodic and Periodic Tasks Embedded Systems 4. Aperodc and Perodc Tasks Lothar Thele 4-1 Contents of Course 1. Embedded Systems Introducton 2. Software Introducton 7. System Components 10. Models 3. Real-Tme Models 4. Perodc/Aperodc

More information

Overhead-Aware Compositional Analysis of Real-Time Systems

Overhead-Aware Compositional Analysis of Real-Time Systems Overhead-Aware ompostonal Analyss of Real-Tme Systems Lnh T.X. Phan, Meng Xu, Jaewoo Lee, nsup Lee, Oleg Sokolsky PRESE enter Department of omputer and nformaton Scence Unversty of Pennsylvana ompostonal

More information

On the Scheduling of Mixed-Criticality Real-Time Task Sets

On the Scheduling of Mixed-Criticality Real-Time Task Sets On the Schedulng of Mxed-Crtcalty Real-Tme Task Sets Donso de Nz, Karthk Lakshmanan, and Ragunathan (Raj) Rajkumar Carnege Mellon Unversty, Pttsburgh, PA - 15232 Abstract The functonal consoldaton nduced

More information

Resource Allocation with a Budget Constraint for Computing Independent Tasks in the Cloud

Resource Allocation with a Budget Constraint for Computing Independent Tasks in the Cloud Resource Allocaton wth a Budget Constrant for Computng Independent Tasks n the Cloud Wemng Sh and Bo Hong School of Electrcal and Computer Engneerng Georga Insttute of Technology, USA 2nd IEEE Internatonal

More information

Two Methods to Release a New Real-time Task

Two Methods to Release a New Real-time Task Two Methods to Release a New Real-tme Task Abstract Guangmng Qan 1, Xanghua Chen 2 College of Mathematcs and Computer Scence Hunan Normal Unversty Changsha, 410081, Chna qqyy@hunnu.edu.cn Gang Yao 3 Sebel

More information

Last Time. Priority-based scheduling. Schedulable utilization Rate monotonic rule: Keep utilization below 69% Static priorities Dynamic priorities

Last Time. Priority-based scheduling. Schedulable utilization Rate monotonic rule: Keep utilization below 69% Static priorities Dynamic priorities Last Tme Prorty-based schedulng Statc prortes Dynamc prortes Schedulable utlzaton Rate monotonc rule: Keep utlzaton below 69% Today Response tme analyss Blockng terms Prorty nverson And solutons Release

More information

Module 9. Lecture 6. Duality in Assignment Problems

Module 9. Lecture 6. Duality in Assignment Problems Module 9 1 Lecture 6 Dualty n Assgnment Problems In ths lecture we attempt to answer few other mportant questons posed n earler lecture for (AP) and see how some of them can be explaned through the concept

More information

Structure and Drive Paul A. Jensen Copyright July 20, 2003

Structure and Drive Paul A. Jensen Copyright July 20, 2003 Structure and Drve Paul A. Jensen Copyrght July 20, 2003 A system s made up of several operatons wth flow passng between them. The structure of the system descrbes the flow paths from nputs to outputs.

More information

Problem Set 9 Solutions

Problem Set 9 Solutions Desgn and Analyss of Algorthms May 4, 2015 Massachusetts Insttute of Technology 6.046J/18.410J Profs. Erk Demane, Srn Devadas, and Nancy Lynch Problem Set 9 Solutons Problem Set 9 Solutons Ths problem

More information

Kernel Methods and SVMs Extension

Kernel Methods and SVMs Extension Kernel Methods and SVMs Extenson The purpose of ths document s to revew materal covered n Machne Learnng 1 Supervsed Learnng regardng support vector machnes (SVMs). Ths document also provdes a general

More information

Improved Worst-Case Response-Time Calculations by Upper-Bound Conditions

Improved Worst-Case Response-Time Calculations by Upper-Bound Conditions Improved Worst-Case Response-Tme Calculatons by Upper-Bound Condtons Vctor Pollex, Steffen Kollmann, Karsten Albers and Frank Slomka Ulm Unversty Insttute of Embedded Systems/Real-Tme Systems {frstname.lastname}@un-ulm.de

More information

Global EDF Scheduling for Parallel Real-Time Tasks

Global EDF Scheduling for Parallel Real-Time Tasks Washngton Unversty n St. Lous Washngton Unversty Open Scholarshp Engneerng and Appled Scence Theses & Dssertatons Engneerng and Appled Scence Sprng 5-15-2014 Global EDF Schedulng for Parallel Real-Tme

More information

Lab 2e Thermal System Response and Effective Heat Transfer Coefficient

Lab 2e Thermal System Response and Effective Heat Transfer Coefficient 58:080 Expermental Engneerng 1 OBJECTIVE Lab 2e Thermal System Response and Effectve Heat Transfer Coeffcent Warnng: though the experment has educatonal objectves (to learn about bolng heat transfer, etc.),

More information

Limited Preemptive Scheduling for Real-Time Systems: a Survey

Limited Preemptive Scheduling for Real-Time Systems: a Survey Lmted Preemptve Schedulng for Real-Tme Systems: a Survey Gorgo C. Buttazzo, Fellow Member, IEEE, Marko Bertogna, Senor Member, IEEE, and Gang Yao Abstract The queston whether preemptve algorthms are better

More information

College of Computer & Information Science Fall 2009 Northeastern University 20 October 2009

College of Computer & Information Science Fall 2009 Northeastern University 20 October 2009 College of Computer & Informaton Scence Fall 2009 Northeastern Unversty 20 October 2009 CS7880: Algorthmc Power Tools Scrbe: Jan Wen and Laura Poplawsk Lecture Outlne: Prmal-dual schema Network Desgn:

More information

ECE559VV Project Report

ECE559VV Project Report ECE559VV Project Report (Supplementary Notes Loc Xuan Bu I. MAX SUM-RATE SCHEDULING: THE UPLINK CASE We have seen (n the presentaton that, for downlnk (broadcast channels, the strategy maxmzng the sum-rate

More information

Lecture 4: November 17, Part 1 Single Buffer Management

Lecture 4: November 17, Part 1 Single Buffer Management Lecturer: Ad Rosén Algorthms for the anagement of Networs Fall 2003-2004 Lecture 4: November 7, 2003 Scrbe: Guy Grebla Part Sngle Buffer anagement In the prevous lecture we taled about the Combned Input

More information

Partitioned Mixed-Criticality Scheduling on Multiprocessor Platforms

Partitioned Mixed-Criticality Scheduling on Multiprocessor Platforms Parttoned Mxed-Crtcalty Schedulng on Multprocessor Platforms Chuanca Gu 1, Nan Guan 1,2, Qngxu Deng 1 and Wang Y 1,2 1 Northeastern Unversty, Chna 2 Uppsala Unversty, Sweden Abstract Schedulng mxed-crtcalty

More information

AN EXTENDIBLE APPROACH FOR ANALYSING FIXED PRIORITY HARD REAL-TIME TASKS

AN EXTENDIBLE APPROACH FOR ANALYSING FIXED PRIORITY HARD REAL-TIME TASKS AN EXENDIBLE APPROACH FOR ANALYSING FIXED PRIORIY HARD REAL-IME ASKS K. W. ndell 1 Department of Computer Scence, Unversty of York, England YO1 5DD ABSRAC As the real-tme computng ndustry moves away from

More information

CHAPTER 5 NUMERICAL EVALUATION OF DYNAMIC RESPONSE

CHAPTER 5 NUMERICAL EVALUATION OF DYNAMIC RESPONSE CHAPTER 5 NUMERICAL EVALUATION OF DYNAMIC RESPONSE Analytcal soluton s usually not possble when exctaton vares arbtrarly wth tme or f the system s nonlnear. Such problems can be solved by numercal tmesteppng

More information

Week3, Chapter 4. Position and Displacement. Motion in Two Dimensions. Instantaneous Velocity. Average Velocity

Week3, Chapter 4. Position and Displacement. Motion in Two Dimensions. Instantaneous Velocity. Average Velocity Week3, Chapter 4 Moton n Two Dmensons Lecture Quz A partcle confned to moton along the x axs moves wth constant acceleraton from x =.0 m to x = 8.0 m durng a 1-s tme nterval. The velocty of the partcle

More information

COMPARISON OF SOME RELIABILITY CHARACTERISTICS BETWEEN REDUNDANT SYSTEMS REQUIRING SUPPORTING UNITS FOR THEIR OPERATIONS

COMPARISON OF SOME RELIABILITY CHARACTERISTICS BETWEEN REDUNDANT SYSTEMS REQUIRING SUPPORTING UNITS FOR THEIR OPERATIONS Avalable onlne at http://sck.org J. Math. Comput. Sc. 3 (3), No., 6-3 ISSN: 97-537 COMPARISON OF SOME RELIABILITY CHARACTERISTICS BETWEEN REDUNDANT SYSTEMS REQUIRING SUPPORTING UNITS FOR THEIR OPERATIONS

More information

Lecture 4. Instructor: Haipeng Luo

Lecture 4. Instructor: Haipeng Luo Lecture 4 Instructor: Hapeng Luo In the followng lectures, we focus on the expert problem and study more adaptve algorthms. Although Hedge s proven to be worst-case optmal, one may wonder how well t would

More information

CHAPTER 17 Amortized Analysis

CHAPTER 17 Amortized Analysis CHAPTER 7 Amortzed Analyss In an amortzed analyss, the tme requred to perform a sequence of data structure operatons s averaged over all the operatons performed. It can be used to show that the average

More information

Fixed-Priority Multiprocessor Scheduling with Liu & Layland s Utilization Bound

Fixed-Priority Multiprocessor Scheduling with Liu & Layland s Utilization Bound Fxed-Prorty Multprocessor Schedulng wth Lu & Layland s Utlzaton Bound Nan Guan, Martn Stgge, Wang Y and Ge Yu Department of Informaton Technology, Uppsala Unversty, Sweden Department of Computer Scence

More information

Single-Facility Scheduling over Long Time Horizons by Logic-based Benders Decomposition

Single-Facility Scheduling over Long Time Horizons by Logic-based Benders Decomposition Sngle-Faclty Schedulng over Long Tme Horzons by Logc-based Benders Decomposton Elvn Coban and J. N. Hooker Tepper School of Busness, Carnege Mellon Unversty ecoban@andrew.cmu.edu, john@hooker.tepper.cmu.edu

More information

NP-Completeness : Proofs

NP-Completeness : Proofs NP-Completeness : Proofs Proof Methods A method to show a decson problem Π NP-complete s as follows. (1) Show Π NP. (2) Choose an NP-complete problem Π. (3) Show Π Π. A method to show an optmzaton problem

More information

Critical sections. Using semaphores. Using semaphores. Using semaphores. How long is blocking time? 17/10/2016. Problems caused by mutual exclusion

Critical sections. Using semaphores. Using semaphores. Using semaphores. How long is blocking time? 17/10/2016. Problems caused by mutual exclusion rtcal sectons Problems caused by mutual excluson crtcal secton wat(s) x = ; y = 5; sgnal(s) wrte global memory buffer nt x; nt y; read wat(s) a = x+; b = y+; c = x+y; crtcal secton sgnal(s) Usng semaphores

More information

LINEAR REGRESSION ANALYSIS. MODULE IX Lecture Multicollinearity

LINEAR REGRESSION ANALYSIS. MODULE IX Lecture Multicollinearity LINEAR REGRESSION ANALYSIS MODULE IX Lecture - 30 Multcollnearty Dr. Shalabh Department of Mathematcs and Statstcs Indan Insttute of Technology Kanpur 2 Remedes for multcollnearty Varous technques have

More information

Grover s Algorithm + Quantum Zeno Effect + Vaidman

Grover s Algorithm + Quantum Zeno Effect + Vaidman Grover s Algorthm + Quantum Zeno Effect + Vadman CS 294-2 Bomb 10/12/04 Fall 2004 Lecture 11 Grover s algorthm Recall that Grover s algorthm for searchng over a space of sze wors as follows: consder the

More information

Lecture Notes on Linear Regression

Lecture Notes on Linear Regression Lecture Notes on Lnear Regresson Feng L fl@sdueducn Shandong Unversty, Chna Lnear Regresson Problem In regresson problem, we am at predct a contnuous target value gven an nput feature vector We assume

More information

Annexes. EC.1. Cycle-base move illustration. EC.2. Problem Instances

Annexes. EC.1. Cycle-base move illustration. EC.2. Problem Instances ec Annexes Ths Annex frst llustrates a cycle-based move n the dynamc-block generaton tabu search. It then dsplays the characterstcs of the nstance sets, followed by detaled results of the parametercalbraton

More information

4 Analysis of Variance (ANOVA) 5 ANOVA. 5.1 Introduction. 5.2 Fixed Effects ANOVA

4 Analysis of Variance (ANOVA) 5 ANOVA. 5.1 Introduction. 5.2 Fixed Effects ANOVA 4 Analyss of Varance (ANOVA) 5 ANOVA 51 Introducton ANOVA ANOVA s a way to estmate and test the means of multple populatons We wll start wth one-way ANOVA If the populatons ncluded n the study are selected

More information

Computer Control: Task Synchronisation in Dynamic Priority Scheduling

Computer Control: Task Synchronisation in Dynamic Priority Scheduling Computer Control: Task Synchronsaton n Dynamc Prorty Schedulng Sérgo Adrano Fernandes Lopes Department of Industral Electroncs Engneerng School Unversty of Mnho Campus de Azurém 4800 Gumarães - PORTUGAL

More information

2E Pattern Recognition Solutions to Introduction to Pattern Recognition, Chapter 2: Bayesian pattern classification

2E Pattern Recognition Solutions to Introduction to Pattern Recognition, Chapter 2: Bayesian pattern classification E395 - Pattern Recognton Solutons to Introducton to Pattern Recognton, Chapter : Bayesan pattern classfcaton Preface Ths document s a soluton manual for selected exercses from Introducton to Pattern Recognton

More information

Module 3 LOSSY IMAGE COMPRESSION SYSTEMS. Version 2 ECE IIT, Kharagpur

Module 3 LOSSY IMAGE COMPRESSION SYSTEMS. Version 2 ECE IIT, Kharagpur Module 3 LOSSY IMAGE COMPRESSION SYSTEMS Verson ECE IIT, Kharagpur Lesson 6 Theory of Quantzaton Verson ECE IIT, Kharagpur Instructonal Objectves At the end of ths lesson, the students should be able to:

More information

Real-Time Operating Systems M. 11. Real-Time: Periodic Task Scheduling

Real-Time Operating Systems M. 11. Real-Time: Periodic Task Scheduling Real-Tme Operatng Systems M 11. Real-Tme: Perodc Task Schedulng Notce The course materal ncludes sldes downloaded from:! http://codex.cs.yale.edu/av/os-book/! and! (sldes by Slberschatz, Galvn, and Gagne,

More information

Chapter - 2. Distribution System Power Flow Analysis

Chapter - 2. Distribution System Power Flow Analysis Chapter - 2 Dstrbuton System Power Flow Analyss CHAPTER - 2 Radal Dstrbuton System Load Flow 2.1 Introducton Load flow s an mportant tool [66] for analyzng electrcal power system network performance. Load

More information

Fixed-Priority Multiprocessor Scheduling with Liu & Layland s Utilization Bound

Fixed-Priority Multiprocessor Scheduling with Liu & Layland s Utilization Bound Fxed-Prorty Multprocessor Schedulng wth Lu & Layland s Utlzaton Bound Nan Guan, Martn Stgge, Wang Y and Ge Yu Department of Informaton Technology, Uppsala Unversty, Sweden Department of Computer Scence

More information

Resource-Efficient Scheduling Of Multiprocessor Mixed-Criticality Real-Time Systems

Resource-Efficient Scheduling Of Multiprocessor Mixed-Criticality Real-Time Systems Unversty of Pennsylvana ScholarlyCommons Publcly Accessble Penn Dssertatons 2017 Resource-Effcent Schedulng Of Multprocessor Mxed-Crtcalty Real-Tme Systems Jaewoo Lee Unversty of Pennsylvana, jaewoo@cs.upenn.edu

More information

Two-Phase Low-Energy N-Modular Redundancy for Hard Real-Time Multi-Core Systems

Two-Phase Low-Energy N-Modular Redundancy for Hard Real-Time Multi-Core Systems 1 Two-Phase Low-Energy N-Modular Redundancy for Hard Real-Tme Mult-Core Systems Mohammad Saleh, Alreza Ejlal, and Bashr M. Al-Hashm, Fellow, IEEE Abstract Ths paper proposes an N-modular redundancy (NMR)

More information

CS : Algorithms and Uncertainty Lecture 17 Date: October 26, 2016

CS : Algorithms and Uncertainty Lecture 17 Date: October 26, 2016 CS 29-128: Algorthms and Uncertanty Lecture 17 Date: October 26, 2016 Instructor: Nkhl Bansal Scrbe: Mchael Denns 1 Introducton In ths lecture we wll be lookng nto the secretary problem, and an nterestng

More information

x = , so that calculated

x = , so that calculated Stat 4, secton Sngle Factor ANOVA notes by Tm Plachowsk n chapter 8 we conducted hypothess tests n whch we compared a sngle sample s mean or proporton to some hypotheszed value Chapter 9 expanded ths to

More information

Outline. Communication. Bellman Ford Algorithm. Bellman Ford Example. Bellman Ford Shortest Path [1]

Outline. Communication. Bellman Ford Algorithm. Bellman Ford Example. Bellman Ford Shortest Path [1] DYNAMIC SHORTEST PATH SEARCH AND SYNCHRONIZED TASK SWITCHING Jay Wagenpfel, Adran Trachte 2 Outlne Shortest Communcaton Path Searchng Bellmann Ford algorthm Algorthm for dynamc case Modfcatons to our algorthm

More information

More metrics on cartesian products

More metrics on cartesian products More metrcs on cartesan products If (X, d ) are metrc spaces for 1 n, then n Secton II4 of the lecture notes we defned three metrcs on X whose underlyng topologes are the product topology The purpose of

More information

Winter 2008 CS567 Stochastic Linear/Integer Programming Guest Lecturer: Xu, Huan

Winter 2008 CS567 Stochastic Linear/Integer Programming Guest Lecturer: Xu, Huan Wnter 2008 CS567 Stochastc Lnear/Integer Programmng Guest Lecturer: Xu, Huan Class 2: More Modelng Examples 1 Capacty Expanson Capacty expanson models optmal choces of the tmng and levels of nvestments

More information

Parametric Utilization Bounds for Fixed-Priority Multiprocessor Scheduling

Parametric Utilization Bounds for Fixed-Priority Multiprocessor Scheduling 2012 IEEE 26th Internatonal Parallel and Dstrbuted Processng Symposum Parametrc Utlzaton Bounds for Fxed-Prorty Multprocessor Schedulng Nan Guan 1,2, Martn Stgge 1, Wang Y 1,2 and Ge Yu 2 1 Uppsala Unversty,

More information

Minimizing Energy Consumption of MPI Programs in Realistic Environment

Minimizing Energy Consumption of MPI Programs in Realistic Environment Mnmzng Energy Consumpton of MPI Programs n Realstc Envronment Amna Guermouche, Ncolas Trquenaux, Benoît Pradelle and Wllam Jalby Unversté de Versalles Sant-Quentn-en-Yvelnes arxv:1502.06733v2 [cs.dc] 25

More information

Chapter Newton s Method

Chapter Newton s Method Chapter 9. Newton s Method After readng ths chapter, you should be able to:. Understand how Newton s method s dfferent from the Golden Secton Search method. Understand how Newton s method works 3. Solve

More information

Appendix B: Resampling Algorithms

Appendix B: Resampling Algorithms 407 Appendx B: Resamplng Algorthms A common problem of all partcle flters s the degeneracy of weghts, whch conssts of the unbounded ncrease of the varance of the mportance weghts ω [ ] of the partcles

More information

Lecture Space-Bounded Derandomization

Lecture Space-Bounded Derandomization Notes on Complexty Theory Last updated: October, 2008 Jonathan Katz Lecture Space-Bounded Derandomzaton 1 Space-Bounded Derandomzaton We now dscuss derandomzaton of space-bounded algorthms. Here non-trval

More information

Psychology 282 Lecture #24 Outline Regression Diagnostics: Outliers

Psychology 282 Lecture #24 Outline Regression Diagnostics: Outliers Psychology 282 Lecture #24 Outlne Regresson Dagnostcs: Outlers In an earler lecture we studed the statstcal assumptons underlyng the regresson model, ncludng the followng ponts: Formal statement of assumptons.

More information

Foundations of Arithmetic

Foundations of Arithmetic Foundatons of Arthmetc Notaton We shall denote the sum and product of numbers n the usual notaton as a 2 + a 2 + a 3 + + a = a, a 1 a 2 a 3 a = a The notaton a b means a dvdes b,.e. ac = b where c s an

More information

The Schedulability Region of Two-Level Mixed-Criticality Systems based on EDF-VD

The Schedulability Region of Two-Level Mixed-Criticality Systems based on EDF-VD The Schedulablty Regon of Two-Level Mxed-Crtcalty Systems based on EDF-VD Drk Müller and Alejandro Masrur Department of Computer Scence TU Chemntz, Germany Abstract The algorthm Earlest Deadlne Frst wth

More information

EEL 6266 Power System Operation and Control. Chapter 3 Economic Dispatch Using Dynamic Programming

EEL 6266 Power System Operation and Control. Chapter 3 Economic Dispatch Using Dynamic Programming EEL 6266 Power System Operaton and Control Chapter 3 Economc Dspatch Usng Dynamc Programmng Pecewse Lnear Cost Functons Common practce many utltes prefer to represent ther generator cost functons as sngle-

More information

Difference Equations

Difference Equations Dfference Equatons c Jan Vrbk 1 Bascs Suppose a sequence of numbers, say a 0,a 1,a,a 3,... s defned by a certan general relatonshp between, say, three consecutve values of the sequence, e.g. a + +3a +1

More information

Utilization-Based Scheduling of Flexible Mixed-Criticality Real-Time Tasks

Utilization-Based Scheduling of Flexible Mixed-Criticality Real-Time Tasks 1 Utlzaton-Based Schedulng of Flexble Mxed-Crtcalty Real-Tme Tasks Gang Chen, Nan Guan, D Lu, Qngqang He, Ka Huang, Todor Stefanov, Wang Y arxv:1711.00100v1 [cs.dc] 29 Sep 2017 Abstract Mxed-crtcalty models

More information

3.1 Expectation of Functions of Several Random Variables. )' be a k-dimensional discrete or continuous random vector, with joint PMF p (, E X E X1 E X

3.1 Expectation of Functions of Several Random Variables. )' be a k-dimensional discrete or continuous random vector, with joint PMF p (, E X E X1 E X Statstcs 1: Probablty Theory II 37 3 EPECTATION OF SEVERAL RANDOM VARIABLES As n Probablty Theory I, the nterest n most stuatons les not on the actual dstrbuton of a random vector, but rather on a number

More information

Resource Sharing. CSCE 990: Real-Time Systems. Steve Goddard. Resources & Resource Access Control (Chapter 8 of Liu)

Resource Sharing. CSCE 990: Real-Time Systems. Steve Goddard. Resources & Resource Access Control (Chapter 8 of Liu) CSCE 990: Real-Tme Systems Resource Sharng Steve Goddard goddard@cse.unl.edu http://www.cse.unl.edu/~goddard/courses/realtmesystems Resources & Resource Access Control (Chapter 8 of Lu) Real-Tme Systems

More information

Analysis of Discrete Time Queues (Section 4.6)

Analysis of Discrete Time Queues (Section 4.6) Analyss of Dscrete Tme Queues (Secton 4.6) Copyrght 2002, Sanjay K. Bose Tme axs dvded nto slots slot slot boundares Arrvals can only occur at slot boundares Servce to a job can only start at a slot boundary

More information

A Hybrid Variational Iteration Method for Blasius Equation

A Hybrid Variational Iteration Method for Blasius Equation Avalable at http://pvamu.edu/aam Appl. Appl. Math. ISSN: 1932-9466 Vol. 10, Issue 1 (June 2015), pp. 223-229 Applcatons and Appled Mathematcs: An Internatonal Journal (AAM) A Hybrd Varatonal Iteraton Method

More information

CHAPTER 4 SPEECH ENHANCEMENT USING MULTI-BAND WIENER FILTER. In real environmental conditions the speech signal may be

CHAPTER 4 SPEECH ENHANCEMENT USING MULTI-BAND WIENER FILTER. In real environmental conditions the speech signal may be 55 CHAPTER 4 SPEECH ENHANCEMENT USING MULTI-BAND WIENER FILTER 4.1 Introducton In real envronmental condtons the speech sgnal may be supermposed by the envronmental nterference. In general, the spectrum

More information

Chapter 5. Solution of System of Linear Equations. Module No. 6. Solution of Inconsistent and Ill Conditioned Systems

Chapter 5. Solution of System of Linear Equations. Module No. 6. Solution of Inconsistent and Ill Conditioned Systems Numercal Analyss by Dr. Anta Pal Assstant Professor Department of Mathematcs Natonal Insttute of Technology Durgapur Durgapur-713209 emal: anta.bue@gmal.com 1 . Chapter 5 Soluton of System of Lnear Equatons

More information

Clock-Driven Scheduling (in-depth) Cyclic Schedules: General Structure

Clock-Driven Scheduling (in-depth) Cyclic Schedules: General Structure CPSC-663: Real-me Systems n-depth Precompute statc schedule o-lne e.g. at desgn tme: can aord expensve algorthms. Idle tmes can be used or aperodc jobs. Possble mplementaton: able-drven Schedulng table

More information

Simultaneous Optimization of Berth Allocation, Quay Crane Assignment and Quay Crane Scheduling Problems in Container Terminals

Simultaneous Optimization of Berth Allocation, Quay Crane Assignment and Quay Crane Scheduling Problems in Container Terminals Smultaneous Optmzaton of Berth Allocaton, Quay Crane Assgnment and Quay Crane Schedulng Problems n Contaner Termnals Necat Aras, Yavuz Türkoğulları, Z. Caner Taşkın, Kuban Altınel Abstract In ths work,

More information

Regulation No. 117 (Tyres rolling noise and wet grip adhesion) Proposal for amendments to ECE/TRANS/WP.29/GRB/2010/3

Regulation No. 117 (Tyres rolling noise and wet grip adhesion) Proposal for amendments to ECE/TRANS/WP.29/GRB/2010/3 Transmtted by the expert from France Informal Document No. GRB-51-14 (67 th GRB, 15 17 February 2010, agenda tem 7) Regulaton No. 117 (Tyres rollng nose and wet grp adheson) Proposal for amendments to

More information

MODELING TRAFFIC LIGHTS IN INTERSECTION USING PETRI NETS

MODELING TRAFFIC LIGHTS IN INTERSECTION USING PETRI NETS The 3 rd Internatonal Conference on Mathematcs and Statstcs (ICoMS-3) Insttut Pertanan Bogor, Indonesa, 5-6 August 28 MODELING TRAFFIC LIGHTS IN INTERSECTION USING PETRI NETS 1 Deky Adzkya and 2 Subono

More information

Second Order Analysis

Second Order Analysis Second Order Analyss In the prevous classes we looked at a method that determnes the load correspondng to a state of bfurcaton equlbrum of a perfect frame by egenvalye analyss The system was assumed to

More information

4DVAR, according to the name, is a four-dimensional variational method.

4DVAR, according to the name, is a four-dimensional variational method. 4D-Varatonal Data Assmlaton (4D-Var) 4DVAR, accordng to the name, s a four-dmensonal varatonal method. 4D-Var s actually a drect generalzaton of 3D-Var to handle observatons that are dstrbuted n tme. The

More information

The optimal delay of the second test is therefore approximately 210 hours earlier than =2.

The optimal delay of the second test is therefore approximately 210 hours earlier than =2. THE IEC 61508 FORMULAS 223 The optmal delay of the second test s therefore approxmately 210 hours earler than =2. 8.4 The IEC 61508 Formulas IEC 61508-6 provdes approxmaton formulas for the PF for smple

More information

Handling Overload (G. Buttazzo, Hard Real-Time Systems, Ch. 9) Causes for Overload

Handling Overload (G. Buttazzo, Hard Real-Time Systems, Ch. 9) Causes for Overload PS-663: Real-Te Systes Handlng Overloads Handlng Overload (G Buttazzo, Hard Real-Te Systes, h 9) auses for Overload Bad syste desgn eg poor estaton of worst-case executon tes Sultaneous arrval of unexpected

More information

Note on EM-training of IBM-model 1

Note on EM-training of IBM-model 1 Note on EM-tranng of IBM-model INF58 Language Technologcal Applcatons, Fall The sldes on ths subject (nf58 6.pdf) ncludng the example seem nsuffcent to gve a good grasp of what s gong on. Hence here are

More information

Hopfield Training Rules 1 N

Hopfield Training Rules 1 N Hopfeld Tranng Rules To memorse a sngle pattern Suppose e set the eghts thus - = p p here, s the eght beteen nodes & s the number of nodes n the netor p s the value requred for the -th node What ll the

More information

Boostrapaggregating (Bagging)

Boostrapaggregating (Bagging) Boostrapaggregatng (Baggng) An ensemble meta-algorthm desgned to mprove the stablty and accuracy of machne learnng algorthms Can be used n both regresson and classfcaton Reduces varance and helps to avod

More information

Gravitational Acceleration: A case of constant acceleration (approx. 2 hr.) (6/7/11)

Gravitational Acceleration: A case of constant acceleration (approx. 2 hr.) (6/7/11) Gravtatonal Acceleraton: A case of constant acceleraton (approx. hr.) (6/7/11) Introducton The gravtatonal force s one of the fundamental forces of nature. Under the nfluence of ths force all objects havng

More information

Calculation of time complexity (3%)

Calculation of time complexity (3%) Problem 1. (30%) Calculaton of tme complexty (3%) Gven n ctes, usng exhaust search to see every result takes O(n!). Calculaton of tme needed to solve the problem (2%) 40 ctes:40! dfferent tours 40 add

More information

An Interactive Optimisation Tool for Allocation Problems

An Interactive Optimisation Tool for Allocation Problems An Interactve Optmsaton ool for Allocaton Problems Fredr Bonäs, Joam Westerlund and apo Westerlund Process Desgn Laboratory, Faculty of echnology, Åbo Aadem Unversty, uru 20500, Fnland hs paper presents

More information

Department of Statistics University of Toronto STA305H1S / 1004 HS Design and Analysis of Experiments Term Test - Winter Solution

Department of Statistics University of Toronto STA305H1S / 1004 HS Design and Analysis of Experiments Term Test - Winter Solution Department of Statstcs Unversty of Toronto STA35HS / HS Desgn and Analyss of Experments Term Test - Wnter - Soluton February, Last Name: Frst Name: Student Number: Instructons: Tme: hours. Ads: a non-programmable

More information

Operating conditions of a mine fan under conditions of variable resistance

Operating conditions of a mine fan under conditions of variable resistance Paper No. 11 ISMS 216 Operatng condtons of a mne fan under condtons of varable resstance Zhang Ynghua a, Chen L a, b, Huang Zhan a, *, Gao Yukun a a State Key Laboratory of Hgh-Effcent Mnng and Safety

More information

Composite Hypotheses testing

Composite Hypotheses testing Composte ypotheses testng In many hypothess testng problems there are many possble dstrbutons that can occur under each of the hypotheses. The output of the source s a set of parameters (ponts n a parameter

More information

Supplementary Notes for Chapter 9 Mixture Thermodynamics

Supplementary Notes for Chapter 9 Mixture Thermodynamics Supplementary Notes for Chapter 9 Mxture Thermodynamcs Key ponts Nne major topcs of Chapter 9 are revewed below: 1. Notaton and operatonal equatons for mxtures 2. PVTN EOSs for mxtures 3. General effects

More information

Supporting Information

Supporting Information Supportng Informaton The neural network f n Eq. 1 s gven by: f x l = ReLU W atom x l + b atom, 2 where ReLU s the element-wse rectfed lnear unt, 21.e., ReLUx = max0, x, W atom R d d s the weght matrx to

More information

Improving the Sensitivity of Deadlines with a Specific Asynchronous Scenario for Harmonic Periodic Tasks scheduled by FP

Improving the Sensitivity of Deadlines with a Specific Asynchronous Scenario for Harmonic Periodic Tasks scheduled by FP Improvng the Senstvty of Deadlnes wth a Specfc Asynchronous Scenaro for Harmonc Perodc Tasks scheduled by FP P. Meumeu Yoms, Y. Sorel, D. de Rauglaudre AOSTE Project-team INRIA Pars-Rocquencourt Le Chesnay,

More information

Notes on Frequency Estimation in Data Streams

Notes on Frequency Estimation in Data Streams Notes on Frequency Estmaton n Data Streams In (one of) the data streamng model(s), the data s a sequence of arrvals a 1, a 2,..., a m of the form a j = (, v) where s the dentty of the tem and belongs to

More information

One-sided finite-difference approximations suitable for use with Richardson extrapolation

One-sided finite-difference approximations suitable for use with Richardson extrapolation Journal of Computatonal Physcs 219 (2006) 13 20 Short note One-sded fnte-dfference approxmatons sutable for use wth Rchardson extrapolaton Kumar Rahul, S.N. Bhattacharyya * Department of Mechancal Engneerng,

More information

Analysis of Queuing Delay in Multimedia Gateway Call Routing

Analysis of Queuing Delay in Multimedia Gateway Call Routing Analyss of Queung Delay n Multmeda ateway Call Routng Qwe Huang UTtarcom Inc, 33 Wood Ave. outh Iseln, NJ 08830, U..A Errol Lloyd Computer Informaton cences Department, Unv. of Delaware, Newark, DE 976,

More information

The Minimum Universal Cost Flow in an Infeasible Flow Network

The Minimum Universal Cost Flow in an Infeasible Flow Network Journal of Scences, Islamc Republc of Iran 17(2): 175-180 (2006) Unversty of Tehran, ISSN 1016-1104 http://jscencesutacr The Mnmum Unversal Cost Flow n an Infeasble Flow Network H Saleh Fathabad * M Bagheran

More information

Physics 5153 Classical Mechanics. D Alembert s Principle and The Lagrangian-1

Physics 5153 Classical Mechanics. D Alembert s Principle and The Lagrangian-1 P. Guterrez Physcs 5153 Classcal Mechancs D Alembert s Prncple and The Lagrangan 1 Introducton The prncple of vrtual work provdes a method of solvng problems of statc equlbrum wthout havng to consder the

More information

princeton univ. F 17 cos 521: Advanced Algorithm Design Lecture 7: LP Duality Lecturer: Matt Weinberg

princeton univ. F 17 cos 521: Advanced Algorithm Design Lecture 7: LP Duality Lecturer: Matt Weinberg prnceton unv. F 17 cos 521: Advanced Algorthm Desgn Lecture 7: LP Dualty Lecturer: Matt Wenberg Scrbe: LP Dualty s an extremely useful tool for analyzng structural propertes of lnear programs. Whle there

More information

Task Scheduling with Self-Suspensions in Soft Real-Time Multiprocessor Systems

Task Scheduling with Self-Suspensions in Soft Real-Time Multiprocessor Systems ask Schedulng wth Self-Suspensons n Soft Real-me Multprocessor Systems Cong Lu and James H. Anderson Department of Computer Scence, Unversty of North Carolna at Chapel Hll Abstract Job release Job deadlne

More information

Econ107 Applied Econometrics Topic 3: Classical Model (Studenmund, Chapter 4)

Econ107 Applied Econometrics Topic 3: Classical Model (Studenmund, Chapter 4) I. Classcal Assumptons Econ7 Appled Econometrcs Topc 3: Classcal Model (Studenmund, Chapter 4) We have defned OLS and studed some algebrac propertes of OLS. In ths topc we wll study statstcal propertes

More information

NUMERICAL DIFFERENTIATION

NUMERICAL DIFFERENTIATION NUMERICAL DIFFERENTIATION 1 Introducton Dfferentaton s a method to compute the rate at whch a dependent output y changes wth respect to the change n the ndependent nput x. Ths rate of change s called the

More information

1 Derivation of Rate Equations from Single-Cell Conductance (Hodgkin-Huxley-like) Equations

1 Derivation of Rate Equations from Single-Cell Conductance (Hodgkin-Huxley-like) Equations Physcs 171/271 -Davd Klenfeld - Fall 2005 (revsed Wnter 2011) 1 Dervaton of Rate Equatons from Sngle-Cell Conductance (Hodgkn-Huxley-lke) Equatons We consder a network of many neurons, each of whch obeys

More information

On the Interval Zoro Symmetric Single-step Procedure for Simultaneous Finding of Polynomial Zeros

On the Interval Zoro Symmetric Single-step Procedure for Simultaneous Finding of Polynomial Zeros Appled Mathematcal Scences, Vol. 5, 2011, no. 75, 3693-3706 On the Interval Zoro Symmetrc Sngle-step Procedure for Smultaneous Fndng of Polynomal Zeros S. F. M. Rusl, M. Mons, M. A. Hassan and W. J. Leong

More information

Quantifying the Sub-optimality of Uniprocessor Fixed Priority Pre-emptive Scheduling for Sporadic Tasksets with Arbitrary Deadlines

Quantifying the Sub-optimality of Uniprocessor Fixed Priority Pre-emptive Scheduling for Sporadic Tasksets with Arbitrary Deadlines Quantfyng the Sub-optmalty of Unprocessor Fxed Prorty Pre-emptve Schedulng for Sporadc Tasksets wth Arbtrary Deadlnes Robert Davs, Sanjoy Baruah, Thomas Rothvoss, Alan Burns To cte ths verson: Robert Davs,

More information

Welfare Properties of General Equilibrium. What can be said about optimality properties of resource allocation implied by general equilibrium?

Welfare Properties of General Equilibrium. What can be said about optimality properties of resource allocation implied by general equilibrium? APPLIED WELFARE ECONOMICS AND POLICY ANALYSIS Welfare Propertes of General Equlbrum What can be sad about optmalty propertes of resource allocaton mpled by general equlbrum? Any crteron used to compare

More information

Uncertainty in measurements of power and energy on power networks

Uncertainty in measurements of power and energy on power networks Uncertanty n measurements of power and energy on power networks E. Manov, N. Kolev Department of Measurement and Instrumentaton, Techncal Unversty Sofa, bul. Klment Ohrdsk No8, bl., 000 Sofa, Bulgara Tel./fax:

More information

HMMT February 2016 February 20, 2016

HMMT February 2016 February 20, 2016 HMMT February 016 February 0, 016 Combnatorcs 1. For postve ntegers n, let S n be the set of ntegers x such that n dstnct lnes, no three concurrent, can dvde a plane nto x regons (for example, S = {3,

More information