Minimizing Cache Overhead via Loaded Cache Blocks and Preemption Placement

Size: px
Start display at page:

Download "Minimizing Cache Overhead via Loaded Cache Blocks and Preemption Placement"

Transcription

1 Mnmzng Cache Overhead va Loaded Cache Blocks and Preempton Placement John Cavccho, Corey Tessler, and Nathan Fsher Wayne State Unversty {ba6444, corey.tessler, Abstract Schedulablty analyss for real-tme systems has been the subject of promnent research over the past several decades. One of the key foundatons of schedulablty analyss s an accurate worst case executon tme (WCET) measurement for each task. In real-tme systems that support preempton, the cache related preempton delay (CRPD) can represent a sgnfcant component (up to 44% as documented n research lterature) [1] [3] of varablty to overall task WCET. Several methods have been employed to calculate CRPD wth sgnfcant levels of pessmsm that may result n a task set erroneously declared as non-schedulable. Furthermore, they do not take nto account that CRPD cost s nherently a functon of where preemptons actually occur. Our approach for computng CRPD va loaded cache blocks (LCBs) s more accurate n the sense that cache state reflects whch cache blocks and the specfc program locatons where they are reloaded. Lmted preempton models attempt to mnmze preempton overhead (CRPD) by reducng the number of allowed preemptons and/or allowng preempton at program locatons where the CRPD effect s mnmzed. These algorthms rely heavly on accurate CRPD measurements or estmaton models n order to dentfy an optmal set of preempton ponts. Our approach mproves the effectveness of lmted optmal preempton pont placement algorthms by calculatng the LCBs for each par of adjacent preemptons to more accurately model task WCET and maxmze schedulablty as compared to exstng preempton pont placement approaches. We propose an optmal preempton pont placement algorthm usng dynamc programmng. Lastly, we wll demonstrate, usng a case study, mproved task set schedulablty and optmal preempton pont placement va our new LCB characterzaton. Index Terms cache-related preempton delay, explct preempton placement, lmted preempton schedulng, worst-case executon tme, scheduablty analyss. I. INTRODUCTION Real-tme systems dffer from tradtonal computng systems n that all tasks must complete executon wthn a specfed deadlne, otherwse the utlty of the result s severely dmnshed or utterly useless. Ensurng real-tme task systems meet ther correspondng deadlnes s the subject of schedulablty analyss. Paramount to schedulablty analyss s accurate characterzaton of WCET. The term WCET represents the worst case executon tme of a task. Whle the debate contnues on whether non-preemptve versus fully preemptve executon s more effectve, recent research on Ths research has been supported by an NSF CAREER Grant (CNS ). lmted preempton models has shown to outperform nonpreemptve schedulng approaches n terms of schedulablty and the fully preemptve schedulng approach n terms of the number of preemptons when preempton cost s consdered. Non-preemptve executon has the dsadvantage of ntroducng blockng of hgh prorty tasks by lower prorty tasks whereas fully preemptve executon has the dsadvantage of sgnfcant preempton overhead whch has shown to be up to 44% [1] [3] of a tasks WCET. One of the notceable contrbutors to preempton overhead s due to cache related preempton delay (CRPD). CRPD occurs when a task denoted τ s preempted by one or more hgher prorty tasks denoted τ k whose executon results n the evcton of cache memory blocks that must be subsequently reloaded when task τ resumes executon. Lmted preempton approaches have the advantage of reduced blockng wth a lmted number of allowed preemptons whle havng the advantage of sectons of non-preemptve regons (NPRs) reducng the preempton overhead. One promsng approach to mplementng a lmted preempton approach s selectng preempton ponts for each task subject to the constrant on maxmum non-preemptve regon executon tme Q. A paper by Bertogna et al. [4] proposed and realzed a lnear tme algorthm for selectng optmal preempton ponts for a sequental basc block structure. Basc blocks are the vertces V of a control flow graph (CFG) connected n a sequence by edges E representng the executon sequence of one or more job nstructons. A sequental basc block structure mples that condtonal logc and branches are fully contaned wthn basc block boundares. Exstng research utlzes pessmstc CRPD costs that effectvely lmt the effectveness of preempton pont placement algorthms. The prmary contrbutons outlned n ths paper nclude mproved accuracy for computng CRPD cost takng nto account where preemptons actually occur, and provdng an optmal preempton pont placement algorthm mplemented va dynamc programmng usng the more accurate CRPD cost. Furthermore, we demonstrate usng a case study mproved task set schedulablty as compared to state-of-the-art methods. The rest of ths paper s organzed as follows. Frst, current research efforts and related work n the areas of cache related preempton delay and lmted preempton schedulng are dscussed n Secton II. Secton III descrbes the real-tme task

2 model termnology used n ths paper. The enhanced CRPD computaton approach s detaled n Secton IV. Secton V brefly outlnes the ntegrated WCET/CRPD computaton approach ncorporated nto fxed prorty (FP) and earlest deadlne frst (EDF) schedulablty analyss. The enhanced lmted preempton pont placement algorthm leverages the mproved WCET/CRPD computaton n a quadratc tme algorthm as dscussed n Secton VI. A case study usng well known benchmark tasks llustratng the benefts of our proposed method are presented and summarzed n Secton VII. Fnally, we wll offer relevant conclusons along wth proposed future work n Secton VIII. II. RELATED WORK Ths paper draws from two areas of real-tme theory resultng n two sgnfcant contrbutons. Hence, the descrptons of the related works are dvded nto two separate subsectons, namely, CRPD calculaton, and lmted preempton schedulng. A. CRPD Calculaton Analyzng the preempted task, Lee et al. [5] [7] ntroduced the concept and algorthm for computng the set of useful cache blocks (UCB) for statcally addressed nstructon and data for drect mapped and set-assocatve caches. The UCBs of the preempted task are used to compute an upper bound on the CRPD. Analyzng the preemptng task, Tomyamay and Dutt [8] computed the set of evctng cache blocks (ECBs) va program path analyss formulatng an nteger lnear programmng model for drect mapped nstructon caches. In a smlar fashon, the ECBs of the preemptng task are used to compute the CRPD. Formal defntons of UCBs and ECBs were outlned by Altmeyer and Burguere [9]. The preemptng tasks memory accesses quantfed as the set of evctng cache blocks wll evct useful cache blocks thereby mposng nonneglgble CRPD on the preempted task. Complementary work by Neg et al. [] and Tan and Mooney [11] compute the ntersecton of the ECB and UCB sets to acheve tghter bounds on the CRPD computaton for drect-mapped and set-assocatve nstructon caches. Staschulat and Ernst [12] realzed an mprovement n computatonal complexty at the expense of CRPD accuracy or tghtness va a cache state reducton technque for drect mapped nstructon caches that was later extended to address set-assocatve caches. Lkewse, WCET analyss tools use an over-approxmaton to estmate cache msses and an under-approxmaton to estmate cache hts. Cache hts are memory blocks that must resde n cache memory hence the term used to descrbe ths set s must cache [9]. Altmeyer and Burguere [9] addressed ths over-approxmaton ssue by ntroducng the noton of defntely-cached useful cache block (DC-UCB) [9]. The DC- UCB s useful n schedulablty analyss to avod double countng of cache msses resultng from ntra-task cache block evcton. Ramaprasad and Mueller [13] examne the problem of dynamc addressng supportng CRPD analyss. Ther algorthm employs memory access patterns to compute CRPD, nstead of UCBs. An mportant dstncton to note s that nstructon memory accesses are tghtly coupled to the control flow graph n contrast to data memory accesses. Ths somorphc property means the set of UCBs correspondng to data memory accesses changes more frequently thereby mandatng UCB computaton at the nstructon level. B. Lmted Preempton Schedulng The motvaton for lmted preempton schedulng approaches stems from lmtatons of fully preemptve and nonpreemptve schedulng. Fully preemptve schedulng suffers from schedulablty degradaton due to ncreased preempton overhead penaltes of whch CRPD comprses a sgnfcant porton. Non-preemptve schedulng suffers from reduced system utlzaton due to the blockng mposed on hgh prorty jobs. These factors have motvated research on alternatve lmted preempton schedulng approaches wth the goal of achevng hgher task utlzaton and reduced preempton overhead. One such approach s known as the deferred preempton model. The dea behnd the deferred preempton model s to permt a currently executng job to execute non-preemptvely for some perod of tme after the arrval of a hgh prorty job. Two dstnct models of deferred preempton have been proposed by Burns [14] and Baruah [15] known as the fxed preempton pont model and the floatng preempton pont model respectvely. In the floatng preempton pont model [15], the begnnng of non-preemptve regons occur wth the arrval of a hgher prorty job. The currently executng job contnues executng non-preemptvely for Q tme unts or earler f the job completes executon. The locaton of the non-preemptve regons s nondetermnstc or essentally floatng. Baruah s approach [15] computes the maxmum amount of blockng tme denoted Q for whch a task τ may execute nonpreemptvely whle stll preservng schedulng feasblty. Another lmted preempton schedulng technque known as preempton threshold schedulng was proposed by Wang and Saksena [16]. In preempton threshold schedulng, each task s assgned two prorty values, namely, a nomnal statc prorty p and a preempton threshold Π. A task wll be preempted only f the preemptng task has a nomnal prorty p k greater than the preempton threshold Π. In the fxed preempton pont model [14], a task can be preempted only at a lmted set of pre-defned locatons. Bascally, tasks contan a seres of non-preemptve regons. Preemptons are permtted at non-preemptve regon boundares or fxed preempton ponts. Two closely related subsequent works mplementng a

3 fxed preempton pont model for a fxed prorty (FP) scheduler were proposed by Smonson and Patel [17] and by Lee et al. [7] whose objectve was to reduce preempton overhead. In Smonsons and Patels approach [17], tasks are sub-dvded nto dstnct non-overlappng ntervals, each constraned by the maxmum blockng tme Q that hgher prorty tasks may be subjected to whle preservng task set schedulablty. At a locaton wthn each nterval contanng the mnmum number of UCBs, a sngle preempton pont s placed. Lee et al. [7] adopted a dfferent method whereby the locatons of preempton ponts are commensurate wth the cardnalty of the UCB set less than a pre-determned threshold. Whle both technques serve to mprove preempton overhead over the fully preemptve approach, ther heurstc nature s unable to acheve a globally optmal soluton. Complementary work by Brl et al. [18] recently ntegrated CRPD costs nto fxed prorty preempton threshold schedulablty analyss for task sets wth arbtrary deadlnes. Optmal prorty thresholds are assgned va a CRPD cost mnmzaton algorthm. In contrast, Bertogna et al. [19] acheved an optmal preempton pont placement algorthm wth lnear tme complexty. The analyss assumed a pessmstc fxed constant context swtch cost at each preempton pont equal to the largest preempton overhead experenced by a task. Later work by Bertogna et al. [4] relaxes the fxed constant context swtch assumpton usng more accurate varable preempton overhead cost nformaton va avalable tmng analyss tools. Marnho et al. [20] proposed an algorthm to compute an upper-bound on the CRPD for a task executng usng preempton trggered floatng non-preemptve regons. Addtonally, Peng et al. [21] proposed a pseudo-polynomal preempton pont placement algorthm for control flow graphs wth arbtrarly nested condtonal program structures. The CRPD cost model used n these papers does not take nto account the nterdependency between selected preempton ponts. Our work mproves these results by computng the cache related preempton delay (CRPD) contrbuton to the varable preempton overhead cost as a functon of the current and next selected preempton ponts. Our method not only accounts for the cache blocks evcted due to preempton, but also accounts for the cache blocks that are reloaded durng executon between preempton ponts thereby mprovng the accuracy of margnal CRPD computatons for multple nested preemptons. Due to the varablty n CRPD and preempton overhead cost, we propose a dynamc programmng algorthm to realze a globally optmal preempton pont placement that further mnmzes the number of preemptons and the preempton overhead cost due to the ncreased CRPD accuracy. III. SYSTEM MODEL Our system contans a task set τ of n perodc or sporadc tasks (τ 1, τ 2,..., τ j,..., τ n ) each scheduled on a sngle processor. Each task τ s characterzed by a tuple (C NP, D, T ) where C NP s the non-preemptve worst case executon tme, D s the relatve deadlne, and T s the nter-arrval tme or perod. Each task τ creates an nfnte number of jobs, wth the frst job arrvng at any tme after system start tme and subsequent jobs arrvng no earler than T tme unts wth a relatve deadlne D T. The system utlzes a preemptve scheduler wth each task/job contanng N number of basc blocks denoted (δ 0, δ1, δ2,..., δn ) wth the total number of basc blocks gven by N = Σ N. A dummy basc block δ 0 wth zero WCET s added at the begnnng of each task to capture the preempton that occurs pror to task executon. In our sequental model, a basc block s a set of one or more nstructons that execute nonpreemptvely. Basc blocks are essentally the vertces V of a lnear control flow graph (CFG) connected n a sequence by edges E representng the executon sequence of one or more job nstructons. Fgure 1 shown below llustrates the sequental basc block connecton structure. Preemptons are Fg. 1: System Model. permtted at basc block boundares. We ntroduce the basc block notaton δ j where s the task dentfer and j s the basc block dentfer. We ntroduce the the non-preemptve basc block executon tme notaton b j where s the task dentfer and j s the basc block dentfer, hence usng ths conventon we have C NP = Σ j b j. (1) The processor utlzaton U of task τ s gven by U = C NP /T. (2) The maxmum blockng tme β s the maxmum duraton that a task τ can be blocked due to non-preemptve executon of a lower prorty task. The preempton cost as a functon of the current and next preempton ponts s gven by the varable ξ as dscussed n secton V. Tasks may be preempted by multple hgher-prorty tasks dentfed by the varable k. For example for both Deadlne-Monotonc (DM) and Earlest- Deadlne-Frst (EDF) schedulng, the set of hgher prorty tasks s represented by: k hp() = {k D k < D }. (3) The number of tmes task τ k can preempt task τ durng task τ s executon s gven by the term N p (τ, τ k ) = (C /T k ) 1. (4) In a lmted preempton approach, each task s permtted to execute non-preemptvely for a maxmum amount of tme denoted by Q. Prevous research on lmted preempton schedulng (e.g., Baruah [15]) has used the above nformaton to determne the value of Q for each task. Therefore, we assume that Q s provded by such an approach.

4 IV. CRPD COMPUTATION Whle exstng research has focused on computng the upper bounds on cache related preempton delay (CRPD), our approach acheves hgher accuracy by computng the loaded cache blocks (LCBs), as defned below, due to hgher prorty task preempton by usng the set of potental/chosen preempton locatons. The sets of varous cache blocks are represented as sets of ntegers. We employ the CRPD terms UCB and ECB as defned by Lee et al. [7] and by Altmeyer and Burguere [9]. Defnton 1. Useful Cache Block (UCB): A memory block m s called a useful cache block at program pont δ j1, f (a) m may be cached at δ j1 and (b) m may be reused at program pont δ j2 that may be reached from δ j1 wthout evcton of m on ths path. More formally, cache block m UCB(τ ) f and only f τ has m as a useful cache block n some cache-set s. Note ths defnton of UCB embodes a task level vew. Cache block m UCB out (δ j ) f and only f δj has m as a useful cache block n some cache-set s where UCB(τ ) = UCB out (δ j ). (5) δ j τ The notaton UCB out (δ j ) s the set of useful cache blocks cached n task τ post-executon of basc block δ j. Smlarly, the notaton UCB n (δ j ) s the set of useful cache blocks cached n task τ pre-executon of basc block δ j. Defnton 2. Evctng cache block (ECB): A memory block m of the preemptng task s called an evctng cache block, f t may be accessed durng the executon of the preemptng task. Cache block m ECB(τ k ) f and only f τ k may evct m n some cache-set s. Note ths defnton of ECB also embodes a task level vew. Cache block m ECB(δ j ) f and only f δj k may evct m n some cache-set s where ECB(τ k ) = δ j k τ k ECB(δ j k ). (6) The notaton ECB(δ j k ) s the set of evctng cache blocks accessed n task τ k durng executon of basc block δ j k. In order to determne whch cache blocks may be reloaded once preempton occurs, we ntroduce the noton of an accessed useful cache block (AUCB). Defnton 3. Accessed useful cache block (AUCB): A memory block of the preempted task s called an accessed useful cache block f t may be accessed durng the executon of a basc block δ j for task τ. The term AUCB out (δ j ) represents the useful cache blocks (UCBs) accessed by task τ durng executon of basc block at locaton δ j. The defnton of AUCB s ntroduced to capture the set of task accessed memory at a specfc basc block locaton subsequently used n the calculaton of blocks that must be reloaded when task preemptons occur. We compute the set of accessed useful cache blocks (AUCBs) as follows: AUCB out (δ j ) = UCB out(δ j ) ECB(δj ). (7) where UCB out (δ j ) s the set of useful cache blocks for task τ post basc block δ j executon; and ECB(δ j ) denotes the set of cache blocks accessed n task τ durng executon of basc block δ j. It s mportant to note that only cache block evctons due to preempton are consdered, as ntrnsc cache msses are captured as part of WCET analyss n the term C NP. Usng the prevously defned terms, we may now defne and explctly compute the cache blocks that are reloaded due to preempton whch are called loaded cache blocks (LCBs). Defnton 4. Loaded cache block (LCB): A memory block of the preempted task s called a loaded cache block, f t may be re-loaded durng the non-preemptve regon (.e., wthn a seres of basc blocks wth no preemptons) mmedately followng a preempton. LCB(δ curr, δ next ) denotes the set of cache blocks re-loaded durng executon of the non-preemptve regon between basc block δ curr and basc block δ next, resultng from preempton of task τ, where basc block locaton δ curr and δ next are the potental/selected preempton pont and next potental/selected preempton pont respectvely. In our model, a preempton pont located at basc block δ curr occurs at the edge between δ curr and δ curr+1. The defnton of LCB s ntroduced to capture the set of reloaded cache memory at a specfc basc block as a functon of the current and next selected preempton ponts. Here, we account for the overhead wthn a non-preemptve regon for reloadng UCBs that could have potentally been evcted by the preempton occurrng mmedately after δ curr and used by some basc block pror to the preempton occurrng mmedately after δ next. LCB(δ curr, δ next ) = [UCB out (δ curr ) [ ν λ AUCB out (δ ν )]] [ τk hp ( )ECB(τ k )] (8) δ curr δ curr where λ def = {ν ν [curr+1, curr+2,..., next]} represents the current selected preempton pont where ρ and δ next represents the next selected preempton ρ, and ρ {δ 0, δ1,..., δn } s an pont where δ next ordered set by ascendng ndex of selected preempton ponts for task τ : ρ def = {δ m δ m s a selected preempton pont of task τ m [0, 1, 2,..., N ]} Ths formula for LCB(δ curr, δ next ) results n the accountng

5 of loaded cache blocks where the preempton occurs. Note that ths notaton assumes a sequental basc block structure. Once we have the set of cache blocks that must be re-loaded due to preempton, the CRPD related preempton overhead may be computed as shown below. γ (δ curr, δ next ) = LCB(δ curr, δ next ) BRT. (9) where BRT s the cache block reload tme; and LCB(δ curr, δ next ) represents the loaded cache blocks or memory accessed by the preempted task τ at basc block δ curr caused by hgher prorty preemptng tasks. To llustrate our approach for computng LCBs, a sutable example s presented n the appendx due to space lmtatons here. V. INTEGRATED WCET/CRPD CALCULATION The modfed preempton cost as a functon of the current and next preempton ponts s gven by: ξ (δ curr, δ next ) = γ (δ curr, δ next ) + π + σ+ η(γ (δ curr, δ next )). () where π s the ppelne cost, σ s the scheduler processng cost, and η() s the front sde bus contenton resultng from the cache reload nterference as descrbed n [1] [3]. The output of our algorthm s an optmal set of preempton ponts, wth respect to our computed preempton cost ξ (), subject to the maxmum allowable non-preempton regon Q. The optmal set of preempton ponts obtaned usng the enhanced accuracy of our preempton cost computaton s used to calculate each task s WCET wth preempton overhead gven by: C = B (ρ ) = C NP + ρ 1 m=1 [ξ (ρ m, ρ m+1 )] (11) where ρ m s the m th selected preempton pont for task τ. To further clarfy what we mean by preempton, we say that δ m s a preempton pont f the preempton between basc blocks δ m and δ m+1 s enabled, meanng the scheduler may preempt between these two basc blocks. Commensurate wth our preempton pont placement algorthm dscussed later, preemptons are always taken at basc blocks δ 0 and δ N hence δ 0, δn ρ for any feasble set of preempton ponts ρ. Supplemental clarfcaton of ths requrement s shown n the example of LCB nterdependence n the appendx. The complete problem formulaton wth constrants for fndng the mnmum WCET wth preempton overhead cost B (ρ ) for task τ s gven by: B (ρ ) = mn N ξ (ρ m, ρ m+1 ) + m=1 } s=1 Ψ (ρ ) = T rue {[ ρ 1 ρ τ b s ] (12) The selecton of optmal preempton ponts s subject to the constrant Ψ (ρ ) that no non-preemptve regon n task τ exceeds the maxmum allowable non-preempton regon parameter Q : { } True, f q m Ψ (ρ ) = (ρ ) Q for m [1, ρ 1] False, otherwse (13) where q m(ρ ) represents the m th non-preemptve-regon (NPR) tme for task τ, capturng the cost of the preempton ρ m gven that ρ m+1 s the next selected preempton pont, plus the basc block cost of all blocks between ρ m and ρ m+1 : [ ] q m (ρ ) = ξ (ρ m, ρ m+1 ) + b s (14) s:δ s {ρm,...,ρm+1 } Our approach employs the results of schedulablty analyss and the aforementoned WCET + CRPD calculaton wth the maxmum allowable non-preempton regon parameter Q computed for each task τ. The objectve s to select a subset of preempton ponts that mnmzes each tasks WCET + CRPD parameter C. We ntroduce slght varatons of terms Ψ, q, and B, used n solvng ntermedate subproblems of our proposed algorthm. The selecton of optmal preempton ponts s subject to the constrant that no nonpreemptve regon n task τ exceeds the maxmum allowable non-preempton regon parameter Q : { Ψ (δ j True, f, q (δ j δk ) =, δk ) Q for δ j, δk ρ } False, otherwse (15) where q (δ j, δk ) represents a possble canddate optmal nonpreemptve-regon (NPR) tme wth successve preempton ponts at basc block locatons δ j and δk for task τ : q (δ j, δk ) = [ ξ (δ j, δk ) + k n=j+1 b n ] (16) The next expresson gves a recursve soluton to the CRPD+WCET mnmzaton problem for the subproblem of the frst basc blocks. We compute the WCET ncludng the preempton pont δ k usng the term B (δ k) for task τ as gven by: B (δ k ) = {[ ] mn B (δ m ) + q (δ m, δ k ) m {0,1,...,k 1} } (17) Ψ (δ m, δ k ) = T rue when k {1, 2,..., N }. For the base case where k = 0, we have B (δ 0 ) = 0. Ths recursve formulaton s necessary for developng the dynamc programmng soluton presented n the next secton. The followng theorem shows our problem has optmal substructure, and thus the formulaton of Equaton 17 represents an optmal soluton. Theorem 1. The WCET + CRPD cost varable B (δ k ) utlzed n Equaton 17 exhbts optmal substructure. Proof: Let k be the subproblem of the sequental control flowgraph contanng basc blocks {δ 0, δ1,..., δk }.

6 To prove optmal substructure, we show that we can obtan the optmal set of preempton ponts for mnmzng the WCET+CRPD for any k by usng the optmal solutons to subproblems 0, 1,..., k 1. Let B (δ 0), B (δ 1),..., B (δ k 1 ) represent the cost of the optmal soluton to these subproblems. We need to show that Equaton 17 represents the optmal cost to k. By way of contradcton, assume there s a better feasble soluton ρ for the sub-problem of determnng the optmal lmted preempton executon costs from basc block δ 0 to basc block δ k; that s, B (ρ ) s strctly smaller than the soluton to k obtaned n Equaton 17 (.e., B (δ k)). Let δl (where l {0, 1,..., k 1}) be the last preempton pont pror to δ k n the set ρ, and let ρ be the set of preempton ponts obtaned from ρ by removng the preempton pont after δ k (.e., ρ s a soluton to l ). Thus, we can represent the cost of the soluton ρ (.e., B (ρ ) by the left-hand-sde of the followng nequalty: B (ρ ) + q (δ l, δ k ) < B (δ k ). (18) Snce ρ s a feasble soluton to k, t must be that Ψ (δ l, δk ) s true. Hence, from Equaton 17 and the mn operaton, we can obtan an upper bound on B (δ k) by consderng the soluton to subproblem l : B (δ k ) B (δ l ) + q (δ l, δ k ). (19) Combnng the nequaltes of Equatons 18 and 19, we fnally obtan B (ρ ) < B (δ l ). However, ths contradcts our assumpton at the begnnng of the proof that B (δ l) represented an optmal soluton to subproblem l. Thus, a soluton ρ wth smaller cost than B (δ k ) cannot exst, and Equaton 17 computes the mnmum obtanable cost for the problem k. VI. PREEMPTION POINT PLACEMENT ALGORITHM Implementng a recursve algorthm drectly from Equaton 17 would lead to a computatonally ntractable mplementaton. Instead, we now propose an O(N 2 ) dynamc programmng algorthm for computng the optmal preempton ponts. Our dynamc programmng preempton pont placement algorthm s summarzed n Algorthm 1 shown below. For each task τ, we are gven the followng parameters: 1) the number of basc blocks N, 2) the non-preemptve executon tme of each basc block b, 3) the maxmum allowable non-preemptve regon Q, and 4) the preempton cost matrx ξ. The preempton cost matrx ξ s organzed for each basc block δ j and contans the preempton cost for all successor basc blocks of the task s control flow graph. The mnmum preempton cost up to all basc blocks s computed and stored n an array denoted B. Each entry of the B array s ntalzed to nfnty. As we consder whether each basc block δ k s n the set of optmal preempton ponts, the locaton of the prevous basc block δ j wth mnmal preempton cost s stored n an array denoted ρ prev. The algorthm examnes each basc block from δ 1 to δ N to mnmze the preempton cost by traversng backwards from the current basc block δ k under consderaton n order to fnd the basc block δ j wth mnmal preempton cost subject to the constrant q (δ j, δk ) Q. Whle each basc block wll have a predecessor wth mnmum preempton cost, the lst of selected preempton ponts s obtaned by startng wth basc block δ N and hoppng to the predecessor basc block stored at ρ prev (δ N ), denoted δ m. Basc blocks δn and δ m are added to the optmal preempton pont set ρ. Ths basc block hoppng process contnues untl basc block δ 0 s reached. The set ρ contans the complete lst of selected optmal preempton ponts. Algorthm 1 D.P. Optmal Preempton Pont Placement 1: functon Select Optmal P P P (N,b,Q,ξ ) 2: B ρ prev {δ 0 }; 3: f b k > Q for some k {1,..., N } then 4: return INFEASIBLE; 5: end f 6: B (δ 0 ) 0; 7: for k : 0 k N do 8: C NP (δ k,δ k ) 0; 9: q (δ k, δ k ) 0; : for j : k 1 j 0 do 11: C NP (δ j, δk ) b j+1 12: q (δ j, δk ) ξ (δ j, δk ) + C NP + C NP (δ j+1, δ k ); (δ j, δk ); 13: f q (δ j, δk ) Q then 14: P cost B (δ j ) + q(δj, δk ); 15: f P cost < B (δ k ) then 16: B (δ k ) P cost; 17: ρ prev(δ k ) δ j ; 18: end f 19: end f 20: end for 21: end for 22: ρ Compute P P Set(N, ρ prev); 23: return FEASIBLE; 24: end functon 25: 26: 27: functon Compute P P Set(N,ρ prev) 28: Computes ρ from ρ prev (Detals omtted) 29: end functon To exemplfy how our algorthm works, consder the followng example. Let N = 6 and Q = 12 for the followng basc block structure wth WCET and preempton costs shown n Fgure 2. The algorthm computes and stores the cumulatve non-preemptve executon costs for startng and endng basc block pars n a matrx denoted C NP (δ j,δk ). For example, C NP (δ 1,δ3 ) = b2 + b 3 = = 4. We do not nclude b 1 snce the preempton occurs after executon of basc block δ 1. Usng ths nformaton, the combned WCET and CRPD costs for each basc block par s computed and stored n a matrx denoted q. For example, q (δ 1,δ3 ) = CNP (δ 1,δ3 ) + ξ (δ 1,δ3 ) = = 9. The remanng q matrx entres are computed n a smlar

7 Fg. 2: Algorthm Example. fashon. These matrces are shown n Fgure 3. The shaded cells n the q matrx represent cases where the combned WCET and CRPD costs for these basc block pars exceed the maxmum allowable non-preemptve regon parameter Q. Durng executon of the algorthm, the mnmum combned WCET + CRPD costs are computed for each basc block and stored n an array denoted B. Basc block pars wth preemptve costs that are less than or equal to Q are canddates for selecton. When a lower cost s determned for a gven basc block, the predecessor preempton pont s updated n the ρ prev array whch keeps track of the selected predecessor preempton ponts thereby formng a dasy chan contanng the entre set of selected preempton ponts. The fnal results are llustrated n Fgures 3 and 4 below. Fg. 3: Combned WCET and CPRD Costs. Fg. 4: Algorthm Results. The maxmum blockng tme Q that each task may tolerate utlzes the computed task WCET parameter C. The method for obtanng the maxmum blockng tme s eloquently summarzed for the Earlest Deadlne Frst (EDF) and Fxed Prorty (FP) schedulng by Bertogna et al. algorthms [4] [19]. The crcular dependency between the maxmum blockng tme Q and task WCET C parameters suggests an teratve approach to allow the two parameters to convergence to a steady state. One such teratve approach contans the followng steps as gven n Algorthm 2. Convergence of Algorthm 2 results prmarly from the fact that the optmal preempton ponts do not change unless the parameter Q changes. Snce Q represents the executon tme slack avalable to a task τ, as expected Q has been observed to exhbt non-ncreasng values durng each subsequent algorthm teraton. The need to subsume hgher level programmng constructs beng the promnent assumpton of the lnear basc block structure can potentally dmnsh the utlty of our approach f the non-preemptve executon tme of any basc block volates the constrant C NP > Q. For ths case, we need to break-up the basc block by permttng preempton every Q tme unts. Algorthm 2 Iteratve Schedulablty and Preempton Pont Placement Algorthm 1: Assume the CRPD of the task system s ntally zero. 2: repeat 3: Run the Baruah algorthm to obtan the maxmum non-preemptve regon Q for each task. 4: Select optmal preempton ponts usng our dynamc programmng algorthm and CRPD calculaton. 5: Compute the WCET + CRPD C from the selected preempton ponts. 6: untl the selected preempton ponts do not change or the system s not feasble for the computed WCET + CRPD. VII. EVALUATION The evaluaton of our preempton pont placement algorthm wll embody two methods: 1) characterzaton and measurement of preempton costs usng real-tme applcaton code, and 2) a breakdown utlzaton schedulablty comparson for varous CRPD computatonal approaches. A. Preempton Cost Characterzaton To characterze the behavor and estmate the beneft of the approach proposed n ths paper, a case study of representatve tasks was performed. The ten tasks were randomly selected from the Malardalen Unversty (MRTC) WCET benchmark sute [22]. Each task was bult usng Gasler s Bare-C Cross Compler [23] for the GRSIM LEON3 [24] smulated target. Tasks were frst analyzed usng AbsInt s a 3 WCET [25] to determne the set of basc blocks. Next, the basc blocks {δ 0, δ1, δ2,..., δn } were seralzed by recordng ther order durng executon. Program ponts were dentfed as the address of the fnal nstructon of each basc block δ j for j [0, N ] to match the sequental basc block structure used by our preempton pont placement algorthm. Each program pont served as a breakpont when runnng the task on the smulator. In accordance wth the sequental basc

8 block structure used n our algorthm, only the data cache s used to compute CRPD as the lnear basc block structure offers only lmted opportuntes for nstructon cache blocks to be revsted. Durng the executon of each basc block, the data cache states were saved as Υ D (δ j ) at each breakpont. The cache snapshots were selected as the fnal vst of each program pont where the data cache contents Υ D (δ j ) were captured, and recorded. From the fnal Υ D (δ j ) snapshots, a conservatve estmate of LCBs shared between program ponts was determned. Shared LCBs were calculated by ntersectng the cache state snapshots from δ j to δ k, except δk. A cache lne that remans unchanged after the executon of {δ j+1, δ j+2,..., δ k} wll be present n the cache before executon of the basc block that δ k represents. It s only from these unchanged cache lnes that the shared LCBs between δ j and δk can be selected. The complete set of unchanged cache lnes serves as a safe upper-bound on the LCBs shared between each basc block par. The equaton below formalzes ths dea, usng the data cache snapshots Υ D (δ j ). k LCB(δ j, δk ) m=j+1 Υ D (δ m ) (20) 1) Avalablty: Ths method may be verfed and reproduced usng the same tools and data. Gasler s compler and smulator are freely avalable. AbsInt s a 3 tool s avalable for educatonal and evaluaton purposes. The programs wrtten and data used n ths paper can be found on GtHub [26] thereby permttng the research communty to reproduce and leverage our work as needed. 2) Results: The results are presented as an llustraton of the potental beneft of our proposed method, utlzng pars of preemptons to determne costs, over methods that consder only the maxmum CRPD at a partcular preempton pont (e.g., Bertogna et al. [4]). In terms of LCB computaton ths mples that the maxmum LCB value over all subsequent program ponts must be used as the CRPD cost: max{lcb(δ j, δk ) j < k} (21) In the followng graphs, each pont n the graph represents two ponts n the program. The frst pont of the program δ j s fxed by the x-axs. The y-axs ndcates the shared LCB count wth a later program pont. The frst graph shown n Fgure 5 s for the recurson program of the MRTC benchmark sute. The lnes represent the mnmum and maxmum shared LCBs between varous program ponts. At each pont on the graph, the ndex of the next preempton pont assocated wth the respectve mnmum or maxmum graph value at that locaton s shown. At program pont δ 4, the mnmum CRPD value s coupled wth program pont δ 7 havng a shared LCB count of 14 whereas the sngle-valued CRPD computaton method fnds 24 shared LCBs coupled at program pont δ 5. UCBs Shared wth Subsequent Program Pont Maxmum Mnmum Program Pont Fg. 5: Recurson Data Cache. To compare the potental utlty of a method that uses at each preempton a sngle-valued CRPD and our method whch determnes CRPD based on a par of adjacent preempton ponts, consder any program pont on the horzontal access of Fgures 5, 6, or 7. For any program preempton pont δ k, a sngle-valued approach would, to be safe, use the value reported n the larger-valued dashed lne. However, an approach that consdered pars of preemptons, as n our approach, can reduce the value and potentally obtan a CRPD reported on the sold lne. The dfference between the performance of these two preempton pont placement algorthms s an example of the beneft provded by consderng locaton aware CRPD cost. The second graph represents the lms benchmark task data cache shown n Fgure 6, and the thrd graph represents the adpcm benchmark task data cache shown n Fgure 7. Smlar to the recurson benchmark data cache, the varablty n the mnmum and maxmum shared LCBs for each program pont further exemplfes the beneft of usng locaton aware CRPD cost n preempton pont placement. Maxmum and mnmum data cache costs for the other seven tasks show smlar varablty but are not shown here due to space lmtatons. In summary, the CRPD cost was consstently reduced or mantaned compared to the sngle-valued approach. A maxmum of 68% reducton of contrbutng cache lnes n the bsort benchmark along wth an average of 18.6% decrease over all benchmarks was notably observed. The ablty of our method to leverage ths reducton leads to the schedulablty mprovements observed n the next subsecton. In examnng the graphs for all tasks and data caches a few common trats were noted. The mnmum shared LCBs sharply ncreases at the end of each task s executon. Ths s due to the nature of the conservatve estmaton of shared LCBs and the tasks, and the number of nstructons n the basc block between the fnal program ponts s relatvely small thereby lmtng the number of data cache lnes that could be elmnated by the ntersecton

9 UCBs Shared wth Subsequent Program Pont UCBs Shared wth Subsequent Program Pont Maxmum Mnmum Program Pont Fg. 6: LMS Data Cache. Maxmum Mnmum Program Pont Fg. 7: ADPCM Data Cache. Drastc spkes downwards n the shared LCB counts for the mnmum and maxmum curves concde wth functon call boundares, or large condtonal blocks. At these boundares, the maxmum and mnmum LCB counts are approxmately the same. There s a sharp upward spke n the early program ponts for the maxmum curves. Ths trend s due to the early ntalzaton blocks bult nto tasks. In our analyss, the mnmum curves show a clear beneft of selectng preempton ponts outsde of the early ntalzaton secton. B. Breakdown Utlzaton The prevous analyss llustrates the beneft of usng a more precse CRPD cost n preempton pont placement thereby reducng the preempton overhead for an ndvdual task, however, t does not address the benefts to task set schedulablty. To evaluate task set schedulablty benefts a second case study was performed focusng on the breakdown utlzaton of the MRTC WCET benchmark sute [22] for varous algorthms. Our study compares the Lunss et al. UCB only approach for EDF [27], the Bertogna et al. Explct Preempton Pont Placement algorthm [4], and our mproved Explct Preempton Pont Placement algorthm. For notatonal convenence the UCB Only approach for EDF wll be referred to as U OE, the Bertogna Explct Preempton Pont Placement algorthm as BEP P, and our Explct Preempton Pont Placement algorthm as EP P. The approprate schedulablty test for U OE s comprsed of three parts: γt,j ucb, U j, and U each representng the maxmum CRPD for task τ j, the utlzaton of task τ j ncludng CRPD, and the utlzaton of the task set respectvely as documented n Lunnss et al. [27]. A task set s schedulable when U 1. Borrowng the breakdown utlzaton evaluaton technque from [27], each task has ts deadlne and perod set to T = P = u C where u s a constant. The constant, u, begns at the number of tasks (ten) and s ncreased n steps of 0.25 untl the task set becomes schedulable. Incremental negatve adjustments are then made to determne when the set becomes unschedulable, ndcatng the fnal breakdown utlzaton. For each task, the set of shared LCBs are calculated at each program pont. Takng the maxmum shared LCB count for any task s safe and approprate for calculatng U. For BEP P, the maxmum shared LCB counts obtaned n the earler evaluaton serve as nput. Lastly, for EP P, the shared LCB counts obtaned n the earler evaluaton serve as nput for our Explct Preempton Pont Placement algorthm. The last nput varables requred for both approaches are C and BRT. C was captured as the total number of cycles requred to complete the task wthout preemptons. The breakdown utlzaton study sweeps the BRT parameter from µs to 390 µs, representng values across several dfferent types of processors. The breakdown utlzaton determnaton leverages our teratve schedulablty and preempton pont placement algorthm as outlned n the followng steps below as gven n Algorthm 3. Usng ten tasks, the breakdown utlzaton Algorthm 3 Breakdown Utlzaton Evaluaton Algorthm 1: Start wth a task system that may or may not be feasble. 2: Assume the CRPD of the task system s ntally zero. 3: repeat 4: Run the Iteratve Schedulablty and Preempton Pont Placement Algorthm 2 5: f the task system s feasble/schedulable then 6: Increase the system utlzaton by decreasng the perods va a bnary search. 7: else 8: Decrease the system utlzaton by ncreasng the perods va a bnary search. 9: end f : untl the utlzaton change s less than some tolerance. 11: The breakdown utlzaton s gven by U. comparson between UOE, BEP P, and EP P are summarzed n Fgure 8. The breakdown utlzaton results ndcate that BEP P domnates the U OE algorthm prmarly due to the lmted preempton model utlzng CRPD cost at the basc block level. EP P domnates BEP P resultng from the more accurate locaton aware CRPD cost used n

10 blty comparson of synthetc task set for varous preempton models, and 3) remove the lnear basc block restrcton thereby permttng arbtrary control flowgraphs. Fg. 8: Breakdown Utlzaton Comparson. our preempton pont placement algorthm. As expected, the breakdown utlzaton converges for all three methods for small BRT values as the cache-overhead becomes neglgble. VIII. CONCLUSION In ths paper, we presented an enhanced approach for calculatng the CRPD takng nto account the selected preempton ponts resultng n greater accuracy. Usng a more precse CRPD calculaton, we also presented an mproved algorthm for selectng a lmted number of preempton ponts for each task subject to schedulablty constrants. Our mproved preempton placement algorthm was demonstrated to mnmze the overall preempton cost, an mportant result n achevng schedulablty n real-tme systems. We hghlghted the teratve nature of consderng schedulablty constrants n our preempton pont placement algorthm and proposed an algorthm combnng schedulablty analyss wth lmted preempton pont placement. Ths approach effectvely llustrates how the ndvdual tasks non-preempton regon parameters Q and the optmal selected preempton ponts wll eventually converge. Furthermore, our enhanced algorthm was demonstrated to be optmal n that f a feasble schedule s not found, then no feasble schedule exsts by any known method utlzng a statc Q value. Our algorthm was shown to run n quadratc tme complexty. Potental preempton ponts can be defned automatcally usng Gasler s compler and smulator along wth AbsInt s a 3 tool or defned manually by the programmer durng desgn and mplementaton. Our experments demonstrated the effectveness of the enhanced CRPD calculaton by llustratng the benefts usng the task set from the MRTC WCET benchmark sute [22]. We also demonstrated the benefts of our enhanced lmted optmal preempton pont placement algorthm and ts ncreased system schedulablty as compared to other algorthms. Whle our task model s defned usng a lnear sequence of basc blocks, t was deemed a hghly sutable model to ntroduce our revsed methods for enhanced CRPD calculaton and optmal lmted preempton pont placement. In future work, we plan to 1) extend the technques descrbed here to set-assocatve caches, 2) perform a schedula- REFERENCES [1] R. Pellzzon and M. Caccamo, Toward the predctable ntegraton of real-tme cots based systems, In RTSS, [2] R. Pellzzon, B. Bu, M. Caccamo, and L. Sha, Coschedulng of cpu and /o transactons n cots-based embedded systems, In RTSS, [3] R. Pellzzon, E. Bett, S. Bak, J. Crswell, M. Caccamo, and R. Kegley, A predctable executon model for cots-based embedded systems, In RTAS, [4] M. Bertogna, O. Xhan, M. Marnon, F. Esposto, and G. Buttazzo, Optmal selecton of preempton ponts to mnmze preempton overhead, In Proceedngs ECRTS, 2011, IEEE. [5] C.-G. Lee, J. Hahn, S. Mn, R. Ha, S. Hong, C. Park, M. Lee, and C. Km, Analyss of cache-related preempton delay n fxed-prorty preemptve schedulng, In RTSS, [6], Enhanced analyss of cache-related preempton delay n fxedprorty preemptve schedulng, In RTSS, [7], Analyss of cache-related preempton delay n fxed-prorty preemptve schedulng, IEEE Transactons on Computers, vol. 47, no. 6, pp , [8] H. Tomyamay and N. D. Dutt, Program path analyss to bound cacherelated preempton delay n preemptve real-tme systems, In CODES, [9] S. Altmeyer and C. Burguere, Cache-related preempton delay va useful cache blocks: Survey and redefnton, Journal of Systems Archtecture (JSA), 2011, Elsever. [] H. S. Neg, T. Mtra, and A. Roychoudhury, Accurate estmaton of cache related preempton delay, In CODES, [11] Y. Tan and V. Mooney, Integrated ntra- and nter-task cache analyss for preemptve mult-taskng real-tme systems, In SCOPES, [12] J. Staschulat and R. Ernst, Scalable precson cache analyss for realtme software, ACM Transactons on Embedded Computng Systems (TECS), vol. 6, no. 4, September [13] H. Ramaprasad and F. Mueller, Boundng preempton delay wthn data cache reference patterns for real-tme tasks, In RTAS, [14] A. Burns, Preemptve prorty-based schedulng: an approprate engneerng approach, [15] S. Baruah, The lmted-preempton unprocessor schedulng of sporadc task systems, In ECRTS, [16] Y. Wang and M. Saksena, Schedulng fxed-prorty tasks wth preempton threshold, In the Internatonal Conference on Real Tme Computng Systems and Applcatons, [17] J. Smonson and J. Patel, Use of preferred preempton ponts n cache based real-tme systems, In IPDPS, 1995, pp [18] R. Brl, S. Altmeyer, M. V. D. Heuvel, R. Davs, and M. Benham, Integratng cache-related pre-empton delays nto analyss of fxed prorty schedulng wth preempton thresholds, In RTSS, [19] M. Bertogna, G. Buttazzo, M. Marnon, G. Yao, F. Esposto, and M. Caccamo, Preempton ponts placement for sporadc task sets, In ECRTS, 20. [20] J. M. Marnho, V. Nels, S. M. Petters, and I. Puaut, Preempton delay analyss for floatng non-preemptve regon schedulng, In EDDA, [21] B. Peng, N. Fsher, and M. Bertogna, Explct preempton placement for real-tme condtonal code, In ECRTS, [22] MRTC benchmarks. [Onlne]. Avalable: [23] Gasler Bare-C Cross Compler (BCC). [Onlne]. Avalable: [24] GRSIM. [Onlne]. Avalable: [25] AbsInt a 3 WCET Tool. [Onlne]. Avalable: [26] Paper Programs and Data Repostory. [Onlne]. Avalable: [27] W. Lunnss, S. Altmeyer, C. Maza, and R. Davs, Integratng cache related pre-empton delay analyss nto edf schedulng, In RTAS, 2013.

11 IX. APPENDIX The appendx presents two supportng examples covered n the two subsectons below. The frst example demonstrates how LCBs are computed. The second example llustrates the nterdependence of LCBs. A. Example LCB Calculaton To llustrate our approach for computng LCBs, consder the followng example. Assume we have two tasks, τ 1 and τ 2 wth UCBs and ECBs for each lsted n Fgure 9. Please note that we have not shown the ECBs, UCBs, or AUCBs n the followng fgures for δ 0 as t s a dummy basc block wth no elements for each of the aforementoned sets. The preempton cost γ(δ 2 1, δ 4 1) for a BRT = 390µs s gven by: γ(δ 2 1, δ 4 1) = {1, 8} 390 = 780µs Usng the same method, LCB(δ 4 1, δ 5 1) s gven by: LCB(δ 4 1, δ 5 1) ={1, 2, 7, 8} {1, 2, 7, 8} {1, 3, 5, 7, 8, 9,, 11, 12, 13} = {1, 7, 8} The preempton cost γ(δ 4 1, δ 5 1) for a BRT = 390µs s gven by: γ(δ 4 1, δ 5 1) = {1, 7, 8} 390 = 1170µs Usng the method llustrated here, the preempton cost matrx entres for each par of basc blocks are computed n a smlar fashon and used as nput to our preempton pont placement algorthm. Fg. 9: Taskset ECBs and UCBs. The computaton for LCBs uses the accessed useful cache blocks (AUCBs) snce the cache blocks that are re-loaded durng executon of the non-preemptve regon between preempton ponts s a functon of the memory that s explctly accessed by the preempted task. The computed AUCBs for each task s shown n Fgure. In accordance wth Equaton 7 one can readly see that the AUCBs are smply the ntersecton of the UCBs and ECBs for each basc block. B. Example of LCB Interdependence To further exemplfy the nterdependence of preempton ponts, consder the example shown below. In order to account for all re-loaded cache blocks (LCBs), preemptons are always ncluded at the frst basc block δ 0 and the last basc block δ N as shown n Fgure 11. Ths s commensurate wth the preemptons that occur before and after the task executes. Assume we have two tasks where τ 2 contans four basc blocks whch may be preempted by task τ 1. For smplfcaton, assume that the ECBs of task τ 1 evcts all UCBs of task τ 2. Let us further assume that we have ρ 2 = {δ2, 0 δ2, 1 δ2, 2 δ2}. 4 Usng our LCB computaton approach, only the re-loaded lnes as captured n the terms LCB(δ2, 1 δ2) 2 and LCB(δ2, 2 δ2) 4 are ncluded n the C 2 computaton. LCB(δ2, 0 δ2) 1 = 0 as no LCBs have been cached untl after executon of basc block δ2. 1 Fg. : Taskset AUCBs. In our example, assume preemptons are taken at basc blocks δ 2 1 and δ 4 1 for task τ 1. For smplcty, we calculate the LCBs assocated wth these two preempton ponts. For LCB(δ 2 1, δ 4 1), we have UCB(δ 2 1) = {1, 2, 4, 8}. The second expresson s the set of memory that s accessed n basc blocks δ 3 1 and δ 4 1, namely {8} {1, 2, 7, 8} = {1, 2, 7, 8} comprsng the set of AUCBs. The thrd expresson s the set of ECBs for task τ 2 where ECB(τ 2 ) = {1, 3, 5, 7, 8, 9,, 11, 12, 13}. Thus, LCB(δ 2 1, δ 4 1) s gven by the ntersecton of the three sets: LCB(δ 2 1, δ 4 1) ={1, 2, 4, 8} {1, 2, 7, 8} {1, 3, 5, 7, 8, 9,, 11, 12, 13} = {1, 8} Fg. 11: LCB Interdependence

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Outline and Reading. Dynamic Programming. Dynamic Programming revealed. Computing Fibonacci. The General Dynamic Programming Technique

Outline and Reading. Dynamic Programming. Dynamic Programming revealed. Computing Fibonacci. The General Dynamic Programming Technique Outlne and Readng Dynamc Programmng The General Technque ( 5.3.2) -1 Knapsac Problem ( 5.3.3) Matrx Chan-Product ( 5.3.1) Dynamc Programmng verson 1.4 1 Dynamc Programmng verson 1.4 2 Dynamc Programmng

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

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

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

MMA and GCMMA two methods for nonlinear optimization

MMA and GCMMA two methods for nonlinear optimization MMA and GCMMA two methods for nonlnear optmzaton Krster Svanberg Optmzaton and Systems Theory, KTH, Stockholm, Sweden. krlle@math.kth.se Ths note descrbes the algorthms used n the author s 2007 mplementatons

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

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

Feature Selection: Part 1

Feature Selection: Part 1 CSE 546: Machne Learnng Lecture 5 Feature Selecton: Part 1 Instructor: Sham Kakade 1 Regresson n the hgh dmensonal settng How do we learn when the number of features d s greater than the sample sze n?

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

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

Min Cut, Fast Cut, Polynomial Identities

Min Cut, Fast Cut, Polynomial Identities Randomzed Algorthms, Summer 016 Mn Cut, Fast Cut, Polynomal Identtes Instructor: Thomas Kesselhem and Kurt Mehlhorn 1 Mn Cuts n Graphs Lecture (5 pages) Throughout ths secton, G = (V, E) s a mult-graph.

More information

Comparison of Regression Lines

Comparison of Regression Lines STATGRAPHICS Rev. 9/13/2013 Comparson of Regresson Lnes Summary... 1 Data Input... 3 Analyss Summary... 4 Plot of Ftted Model... 6 Condtonal Sums of Squares... 6 Analyss Optons... 7 Forecasts... 8 Confdence

More information

EEE 241: Linear Systems

EEE 241: Linear Systems EEE : Lnear Systems Summary #: Backpropagaton BACKPROPAGATION The perceptron rule as well as the Wdrow Hoff learnng were desgned to tran sngle layer networks. They suffer from the same dsadvantage: they

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

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

Dynamic Programming. Preview. Dynamic Programming. Dynamic Programming. Dynamic Programming (Example: Fibonacci Sequence)

Dynamic Programming. Preview. Dynamic Programming. Dynamic Programming. Dynamic Programming (Example: Fibonacci Sequence) /24/27 Prevew Fbonacc Sequence Longest Common Subsequence Dynamc programmng s a method for solvng complex problems by breakng them down nto smpler sub-problems. It s applcable to problems exhbtng the propertes

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

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

This column is a continuation of our previous column

This column is a continuation of our previous column Comparson of Goodness of Ft Statstcs for Lnear Regresson, Part II The authors contnue ther dscusson of the correlaton coeffcent n developng a calbraton for quanttatve analyss. Jerome Workman Jr. and Howard

More information

VQ widely used in coding speech, image, and video

VQ widely used in coding speech, image, and video at Scalar quantzers are specal cases of vector quantzers (VQ): they are constraned to look at one sample at a tme (memoryless) VQ does not have such constrant better RD perfomance expected Source codng

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

Adiabatic Sorption of Ammonia-Water System and Depicting in p-t-x Diagram

Adiabatic Sorption of Ammonia-Water System and Depicting in p-t-x Diagram Adabatc Sorpton of Ammona-Water System and Depctng n p-t-x Dagram J. POSPISIL, Z. SKALA Faculty of Mechancal Engneerng Brno Unversty of Technology Techncka 2, Brno 61669 CZECH REPUBLIC Abstract: - Absorpton

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

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

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

Chapter 13: Multiple Regression

Chapter 13: Multiple Regression Chapter 13: Multple Regresson 13.1 Developng the multple-regresson Model The general model can be descrbed as: It smplfes for two ndependent varables: The sample ft parameter b 0, b 1, and b are used to

More information

Negative Binomial Regression

Negative Binomial Regression STATGRAPHICS Rev. 9/16/2013 Negatve Bnomal Regresson Summary... 1 Data Input... 3 Statstcal Model... 3 Analyss Summary... 4 Analyss Optons... 7 Plot of Ftted Model... 8 Observed Versus Predcted... 10 Predctons...

More information

A PROBABILITY-DRIVEN SEARCH ALGORITHM FOR SOLVING MULTI-OBJECTIVE OPTIMIZATION PROBLEMS

A PROBABILITY-DRIVEN SEARCH ALGORITHM FOR SOLVING MULTI-OBJECTIVE OPTIMIZATION PROBLEMS HCMC Unversty of Pedagogy Thong Nguyen Huu et al. A PROBABILITY-DRIVEN SEARCH ALGORITHM FOR SOLVING MULTI-OBJECTIVE OPTIMIZATION PROBLEMS Thong Nguyen Huu and Hao Tran Van Department of mathematcs-nformaton,

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

EDF Scheduling for Identical Multiprocessor Systems

EDF Scheduling for Identical Multiprocessor Systems EDF Schedulng for dentcal Multprocessor Systems Maro Bertogna Unversty of Modena, taly As Moore s law goes on Number of transstor/chp doubles every 18 to 24 mm heatng becomes a problem Power densty (W/cm

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

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

CSci 6974 and ECSE 6966 Math. Tech. for Vision, Graphics and Robotics Lecture 21, April 17, 2006 Estimating A Plane Homography

CSci 6974 and ECSE 6966 Math. Tech. for Vision, Graphics and Robotics Lecture 21, April 17, 2006 Estimating A Plane Homography CSc 6974 and ECSE 6966 Math. Tech. for Vson, Graphcs and Robotcs Lecture 21, Aprl 17, 2006 Estmatng A Plane Homography Overvew We contnue wth a dscusson of the major ssues, usng estmaton of plane projectve

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

A Robust Method for Calculating the Correlation Coefficient

A Robust Method for Calculating the Correlation Coefficient A Robust Method for Calculatng the Correlaton Coeffcent E.B. Nven and C. V. Deutsch Relatonshps between prmary and secondary data are frequently quantfed usng the correlaton coeffcent; however, the tradtonal

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

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

Some Comments on Accelerating Convergence of Iterative Sequences Using Direct Inversion of the Iterative Subspace (DIIS)

Some Comments on Accelerating Convergence of Iterative Sequences Using Direct Inversion of the Iterative Subspace (DIIS) Some Comments on Acceleratng Convergence of Iteratve Sequences Usng Drect Inverson of the Iteratve Subspace (DIIS) C. Davd Sherrll School of Chemstry and Bochemstry Georga Insttute of Technology May 1998

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

Common loop optimizations. Example to improve locality. Why Dependence Analysis. Data Dependence in Loops. Goal is to find best schedule:

Common loop optimizations. Example to improve locality. Why Dependence Analysis. Data Dependence in Loops. Goal is to find best schedule: 15-745 Lecture 6 Data Dependence n Loops Copyrght Seth Goldsten, 2008 Based on sldes from Allen&Kennedy Lecture 6 15-745 2005-8 1 Common loop optmzatons Hostng of loop-nvarant computatons pre-compute before

More information

Errors for Linear Systems

Errors for Linear Systems Errors for Lnear Systems When we solve a lnear system Ax b we often do not know A and b exactly, but have only approxmatons  and ˆb avalable. Then the best thng we can do s to solve ˆx ˆb exactly whch

More information

COS 521: Advanced Algorithms Game Theory and Linear Programming

COS 521: Advanced Algorithms Game Theory and Linear Programming COS 521: Advanced Algorthms Game Theory and Lnear Programmng Moses Charkar February 27, 2013 In these notes, we ntroduce some basc concepts n game theory and lnear programmng (LP). We show a connecton

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

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

FUZZY GOAL PROGRAMMING VS ORDINARY FUZZY PROGRAMMING APPROACH FOR MULTI OBJECTIVE PROGRAMMING PROBLEM

FUZZY GOAL PROGRAMMING VS ORDINARY FUZZY PROGRAMMING APPROACH FOR MULTI OBJECTIVE PROGRAMMING PROBLEM Internatonal Conference on Ceramcs, Bkaner, Inda Internatonal Journal of Modern Physcs: Conference Seres Vol. 22 (2013) 757 761 World Scentfc Publshng Company DOI: 10.1142/S2010194513010982 FUZZY GOAL

More information

1 Convex Optimization

1 Convex Optimization Convex Optmzaton We wll consder convex optmzaton problems. Namely, mnmzaton problems where the objectve s convex (we assume no constrants for now). Such problems often arse n machne learnng. For example,

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

LOW BIAS INTEGRATED PATH ESTIMATORS. James M. Calvin

LOW BIAS INTEGRATED PATH ESTIMATORS. James M. Calvin Proceedngs of the 007 Wnter Smulaton Conference S G Henderson, B Bller, M-H Hseh, J Shortle, J D Tew, and R R Barton, eds LOW BIAS INTEGRATED PATH ESTIMATORS James M Calvn Department of Computer Scence

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

U.C. Berkeley CS294: Beyond Worst-Case Analysis Luca Trevisan September 5, 2017

U.C. Berkeley CS294: Beyond Worst-Case Analysis Luca Trevisan September 5, 2017 U.C. Berkeley CS94: Beyond Worst-Case Analyss Handout 4s Luca Trevsan September 5, 07 Summary of Lecture 4 In whch we ntroduce semdefnte programmng and apply t to Max Cut. Semdefnte Programmng Recall that

More information

On the Multicriteria Integer Network Flow Problem

On the Multicriteria Integer Network Flow Problem BULGARIAN ACADEMY OF SCIENCES CYBERNETICS AND INFORMATION TECHNOLOGIES Volume 5, No 2 Sofa 2005 On the Multcrtera Integer Network Flow Problem Vassl Vasslev, Marana Nkolova, Maryana Vassleva Insttute of

More information

Lecture 10 Support Vector Machines II

Lecture 10 Support Vector Machines II Lecture 10 Support Vector Machnes II 22 February 2016 Taylor B. Arnold Yale Statstcs STAT 365/665 1/28 Notes: Problem 3 s posted and due ths upcomng Frday There was an early bug n the fake-test data; fxed

More information

For now, let us focus on a specific model of neurons. These are simplified from reality but can achieve remarkable results.

For now, let us focus on a specific model of neurons. These are simplified from reality but can achieve remarkable results. Neural Networks : Dervaton compled by Alvn Wan from Professor Jtendra Malk s lecture Ths type of computaton s called deep learnng and s the most popular method for many problems, such as computer vson

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

Simulated Power of the Discrete Cramér-von Mises Goodness-of-Fit Tests

Simulated Power of the Discrete Cramér-von Mises Goodness-of-Fit Tests Smulated of the Cramér-von Mses Goodness-of-Ft Tests Steele, M., Chaselng, J. and 3 Hurst, C. School of Mathematcal and Physcal Scences, James Cook Unversty, Australan School of Envronmental Studes, Grffth

More information

APPENDIX A Some Linear Algebra

APPENDIX A Some Linear Algebra APPENDIX A Some Lnear Algebra The collecton of m, n matrces A.1 Matrces a 1,1,..., a 1,n A = a m,1,..., a m,n wth real elements a,j s denoted by R m,n. If n = 1 then A s called a column vector. Smlarly,

More information

Lecture 12: Discrete Laplacian

Lecture 12: Discrete Laplacian Lecture 12: Dscrete Laplacan Scrbe: Tanye Lu Our goal s to come up wth a dscrete verson of Laplacan operator for trangulated surfaces, so that we can use t n practce to solve related problems We are mostly

More information

Curve Fitting with the Least Square Method

Curve Fitting with the Least Square Method WIKI Document Number 5 Interpolaton wth Least Squares Curve Fttng wth the Least Square Method Mattheu Bultelle Department of Bo-Engneerng Imperal College, London Context We wsh to model the postve feedback

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

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

Transfer Functions. Convenient representation of a linear, dynamic model. A transfer function (TF) relates one input and one output: ( ) system

Transfer Functions. Convenient representation of a linear, dynamic model. A transfer function (TF) relates one input and one output: ( ) system Transfer Functons Convenent representaton of a lnear, dynamc model. A transfer functon (TF) relates one nput and one output: x t X s y t system Y s The followng termnology s used: x y nput output forcng

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

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

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

DUE: WEDS FEB 21ST 2018

DUE: WEDS FEB 21ST 2018 HOMEWORK # 1: FINITE DIFFERENCES IN ONE DIMENSION DUE: WEDS FEB 21ST 2018 1. Theory Beam bendng s a classcal engneerng analyss. The tradtonal soluton technque makes smplfyng assumptons such as a constant

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

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

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

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

Generalized Linear Methods

Generalized Linear Methods Generalzed Lnear Methods 1 Introducton In the Ensemble Methods the general dea s that usng a combnaton of several weak learner one could make a better learner. More formally, assume that we have a set

More information

Exercises. 18 Algorithms

Exercises. 18 Algorithms 18 Algorthms Exercses 0.1. In each of the followng stuatons, ndcate whether f = O(g), or f = Ω(g), or both (n whch case f = Θ(g)). f(n) g(n) (a) n 100 n 200 (b) n 1/2 n 2/3 (c) 100n + log n n + (log n)

More information

Inductance Calculation for Conductors of Arbitrary Shape

Inductance Calculation for Conductors of Arbitrary Shape CRYO/02/028 Aprl 5, 2002 Inductance Calculaton for Conductors of Arbtrary Shape L. Bottura Dstrbuton: Internal Summary In ths note we descrbe a method for the numercal calculaton of nductances among conductors

More information

The Study of Teaching-learning-based Optimization Algorithm

The Study of Teaching-learning-based Optimization Algorithm Advanced Scence and Technology Letters Vol. (AST 06), pp.05- http://dx.do.org/0.57/astl.06. The Study of Teachng-learnng-based Optmzaton Algorthm u Sun, Yan fu, Lele Kong, Haolang Q,, Helongang Insttute

More information

U.C. Berkeley CS294: Spectral Methods and Expanders Handout 8 Luca Trevisan February 17, 2016

U.C. Berkeley CS294: Spectral Methods and Expanders Handout 8 Luca Trevisan February 17, 2016 U.C. Berkeley CS94: Spectral Methods and Expanders Handout 8 Luca Trevsan February 7, 06 Lecture 8: Spectral Algorthms Wrap-up In whch we talk about even more generalzatons of Cheeger s nequaltes, and

More information

TOPICS MULTIPLIERLESS FILTER DESIGN ELEMENTARY SCHOOL ALGORITHM MULTIPLICATION

TOPICS MULTIPLIERLESS FILTER DESIGN ELEMENTARY SCHOOL ALGORITHM MULTIPLICATION 1 2 MULTIPLIERLESS FILTER DESIGN Realzaton of flters wthout full-fledged multplers Some sldes based on support materal by W. Wolf for hs book Modern VLSI Desgn, 3 rd edton. Partly based on followng papers:

More information

18.1 Introduction and Recap

18.1 Introduction and Recap CS787: Advanced Algorthms Scrbe: Pryananda Shenoy and Shjn Kong Lecturer: Shuch Chawla Topc: Streamng Algorthmscontnued) Date: 0/26/2007 We contnue talng about streamng algorthms n ths lecture, ncludng

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

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

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

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

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

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

Fundamental loop-current method using virtual voltage sources technique for special cases

Fundamental loop-current method using virtual voltage sources technique for special cases Fundamental loop-current method usng vrtual voltage sources technque for specal cases George E. Chatzaraks, 1 Marna D. Tortorel 1 and Anastasos D. Tzolas 1 Electrcal and Electroncs Engneerng Departments,

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

On a direct solver for linear least squares problems

On a direct solver for linear least squares problems ISSN 2066-6594 Ann. Acad. Rom. Sc. Ser. Math. Appl. Vol. 8, No. 2/2016 On a drect solver for lnear least squares problems Constantn Popa Abstract The Null Space (NS) algorthm s a drect solver for lnear

More information

Linear Approximation with Regularization and Moving Least Squares

Linear Approximation with Regularization and Moving Least Squares Lnear Approxmaton wth Regularzaton and Movng Least Squares Igor Grešovn May 007 Revson 4.6 (Revson : March 004). 5 4 3 0.5 3 3.5 4 Contents: Lnear Fttng...4. Weghted Least Squares n Functon Approxmaton...

More information