Bounding DMA Interference on Hard-Real-Time Embedded Systems *

Size: px
Start display at page:

Download "Bounding DMA Interference on Hard-Real-Time Embedded Systems *"

Transcription

1 JOURNAL OF INFORMATION SCIENCE AND ENGINEERING 22, (2006) Boundng DMA Interference on Hard-Real-Tme Embedded Systems * TAI-YI HUANG, CHIH-CHIEH CHOU AND PO-YUAN CHEN Department of Computer Scence Natonal Tsng Hua Unversty Hsnchu, 300 Tawan E-mal: {tyhuang; ccchou; pychen}@cs.nthu.edu.tw A DMA controller that operates n the cycle-stealng mode transfers data by stealng bus cycles from the CPU. The concurrent contenton for the I/O bus by a CPU task and a cycle-stealng DMA I/O task retards ther progress and extends ther executon tmes. In ths paper we frst descrbe a method for boundng the worst-case executon tme (WCET) of a CPU task when cycle-stealng DMA I/O s present. We next use the dynamc-programmng technque to develop a method for boundng the WCET of a cyclestealng DMA I/O task executng concurrently wth a set of CPU tasks. We conducted exhaustve smulatons on a wdely-used embedded processor. The expermental results demonstrate that our methods tghtly bound the WCETs of CPU tasks and of cycle-stealng DMA I/O tasks. Keywords: hard-real-tme systems, worst-case executon tme, cycle-stealng DMA I/O, concurrent executon, embedded systems 1. INTRODUCTION In a hard-real-tme embedded system, both CPU tasks and I/O tasks are requred to complete executons by ther deadlne. A task that executes longer than ts allocated computaton tme may lead to mssed deadlnes and the falure of the whole system. The schedulablty analyss of such a system requres that the worst-case executon tme (WCET) of each task be known n advance to ensure the completon of each task by ts allocated computaton tme [14, 19, 20, 28, 30]. To tghtly bound the WCET, the nterference of concurrently executng CPU tasks and I/O tasks must be consdered. Ths paper addresses the problems of boundng the WCETs of concurrently executng CPU tasks and cycle-stealng DMA I/O tasks n a hard-real-tme embedded system. We model each CPU task as a sequence of nstructons (.e., code wthout undetermned loop bounds and recursve functon calls) whch s qute commonly found n the syntheszed code of hard-real-tme embedded systems [10, 11, 27, 29]. A DMA controller (DMAC) transfers data between the man memory and I/O devces wth mnmal CPU nvolvement. A DMAC may operate ether n the burst mode or n the cycle-stealng mode. A DMAC that operates n the burst mode gans the control of the I/O bus once t s free and retans ts ownershp untl all data transfers n the DMA I/O task complete. In contrast, a DMAC that operates n the cycle-stealng mode transfers data by stealng Receved June 21, 2004; accepted November 1, Communcated by Davd H. C. Du. * Ths work was supported n part by the Mnstry of Economc Affars of Tawan, under grant No. MOEA 95-EC-17-A-01-S1-038 and 94-EC-17-A-04-S

2 1230 TAI-YI HUANG, CHIN-CHIEH CHOU AND PO-YUAN CHEN bus cycles from an executng CPU task. A cycle-stealng DMA I/O task allows a CPU task to execute concurrently. The contenton for the I/O bus by the cycle-stealng DMA I/O task and the CPU task retards ther progress and extends ther executon tmes. Ths paper frst analyzes the delay caused by cycle-stealng DMA I/O actvtes on a concurrently executng CPU nstructon. Based on ths analyss, we develop a method that tghtly bounds the WCET of a CPU task. We next proceed to the problem of boundng the WCET of a cycle-stealng DMA I/O task. We defne the executon tme of a DMA I/O task to be the nterval from the nstant when the DMAC s ready to transfer the frst unt of data to the nstant when the CPU receves from the DMAC an nterrupt sgnal when the transfer of the last unt of data s complete. We present here a method for boundng the WCET of a cycle-stealng DMA I/O task executng concurrently wth a set of CPU tasks on a sngle-processor embedded system. We use the dynamc-programmng technque n the development of ths method. The runnng-tme complexty of ths method s O(ZU) + O(K 2 Z 2 ), where Z s the number of unts of data to be transferred by the DMA I/O task, K s the number of CPU tasks, and U s the sum of the number of nstructons n CPU tasks. To demonstrate the effectveness of our method on boundng the WCET of a CPU task, we compare our WCET predcton wth the one obtaned by the tradtonal pessmstc approach. Gven a CPU task and a cycle-stealng DMA I/O task, whch are ready at the same tme, the tradtonal pessmstc approach estmates the WCET of the CPU task to be the sum of the executon tmes of both tasks when each executes alone. We measure the performance of our method n terms of the amount of reducton from the most pessmstc WCET predcton. Among the several commonly-used programs tested, our method acheves up to 39% mprovement n the accuracy of the WCET predcton. We demonstrate the correctness of our method on boundng the WCET of a cyclestealng DMA I/O task through exhaustve smulatons. Gven a cycle-stealng DMA I/O task and a set of CPU tasks, we smulated all possble combnatons of release tmes and concurrent executons of these preemptve CPU tasks and the cycle-stealng DMA I/O task. We compared the maxmum executon tme of the DMA I/O task recorded n the smulaton experment wth the WCET predcton obtaned by our method. The expermental results show that our method tghtly bounds the WCET of a cycle-stealng DMA I/O task. The rest of the paper s structured as follows. Secton 2 descrbes our machne model. Secton 3 analyzes the delay caused by cycle-stealng DMA I/O and presents the method for boundng the WCET of a CPU task. Secton 4 descrbes the method for boundng the WCET of a cycle-stealng DMA I/O task. The expermental results are dscussed n secton 5. Secton 6 descrbes related work. Fnally, secton 7 concludes ths paper. 2. THE MACHINE MODEL We adopt here the commonly-used sngle-processor machne model shown n Fg. 1. In ths model the DMAC operates n the cycle-stealng mode and shares the same I/O bus wth the CPU. The bus controller allows only one bus master at any tme. As a result, ether the CPU or the DMAC, but not both, can hold the bus and transfer data at the same tme.

3 BOUNDING DMA INTERFERENCE ON HARD-REAL-TIME EMBEDDED SYSTEMS 1231 CPU DMA Controller Bus Controller I/O Bus Man Memory I/O Devce Fg. 1. The archtecture of the machne model. Fg. 2. The nstructon cycle of ADD 1, (A0). We assume that sgnal transmsson n the bus s nstantaneous. Our analytcal method presented n ths paper works only on a processor when the cache memory and the nstructon ppelne are dsabled. Although ths assumpton may seem mpractcal wth the current mcroprocessor technology, the authors argue that, gven the extreme complexty of the problem beng addressed, our method s the frst soluton to bound the WCET of cycle-stealng DMA I/O tasks. The executon of an nstructon n ths machne model s as shown n Fg. 2. An nstructon cycle conssts of a sequence of operatons to fetch and execute an nstructon. The sequence takes one or more machne cycles. A machne cycle requres one or more processor clock cycles to execute. The begnnng of each machne cycle s trggered by the processor clock. For example, the nstructon cycle of ADD 1, (A0), shown n Fg. 2, s composed of four machne cycles: a memory-read (bus-access) cycle to fetch the nstructon, a memory-read (bus-access) cycle to fetch an operand, an executon (no-busaccess) cycle to carry out the addton, followed by a memory-wrte (bus-access) cycle to wrte back the data. Each machne cycle n ths example n turn takes 2, 4, 2, and 4 processor clock cycles to execute. We classfy all machne cycles nto two categores: B (busaccess) cycles and E (executon) cycles. A B-cycle s a machne cycle durng whch the CPU uses the I/O bus. In contrast, the CPU does not use the bus when t s n an E-cycle. In general, there may be several consecutve E-cycles n an nstructon cycle. For the sake of concreteness, we assume that the bus contenton between the CPU and the DMAC s regulated accordng to the VMEbus [33] protocol. Ths protocol s suffcently general such that our analyss presented n ths paper may be easly appled to many other commonly-used bus protocols. To access the bus, the DMAC frst sends a bus request. If the bus s already used by the CPU, the DMAC wats untl the bus becomes free. When the bus s free, there s a short delay, called the bus master transfer tme (BMT), whle the DMAC gans the control of the bus. The DMAC can transfer data

4 1232 TAI-YI HUANG, CHIN-CHIEH CHOU AND PO-YUAN CHEN when t becomes the bus master. At the end of each transfer of a unt of data, f there s no bus request from a hgher prorty devce (e.g., the CPU), the DMAC may contnue to hold the bus and transfer data. Otherwse, the DMAC must release the bus, and after another BMT delay the hgher prorty devce gans the control of the bus and becomes the bus master. Fg. 3 llustrates the concurrent executon of DMA I/O and a sequence of machne cycles B E 1 E 2 E k B +1. The DMAC gans the bus when the CPU enters E 1 cycle from B cycle. It keeps transferrng data durng the nterval from E 1 cycle to E k cycle. The CPU requests the bus at the end of E k cycle. The DMAC checks f there s any pendng bus request at the end of each data transfer; the DMAC releases the bus at the end of m-th transfer, and the CPU gans the bus after another BMT delay. The executon of B +1 cycle s delayed for (b + BMT), where b s the delay between when the CPU requests the bus and when the request s checked and the DMAC releases the bus. Fg. 3. The concurrent executon of DMA I/O and a sequence of E-cycles. We assume that the transfer of each unt of data by the DMAC takes the same amount of tme and denote ths tme by DT. Let T be the total executon tme of the k consecutve E-cycles, and m be the maxmum unts of data the DMAC can transfer durng ths sequence of E-cycles. Based on the facts that 0 b < DT and T + b = m D + BMT, we have (m 1) < T BMT DT m. We can compute m by the equaton T BMT m =. DT (1) The worst-case delay suffered by the CPU executon of the sequence of machne cycles s m DT + 2 BMT T. Because each machne cycle s trggered by the processor clock, the frst B-cycle B +1 after the sequence of k E-cycles cannot start untl the next processor clock cycle. As a result, the exact worst-case delay suffered by the CPU executon s equal to

5 BOUNDING DMA INTERFERENCE ON HARD-REAL-TIME EMBEDDED SYSTEMS 1233 m DT + 2 BMT T d = T T c c, (2) where T c s the perod of a clock cycle. 3. BOUNDING THE WCET OF A CPU TASK Let A C denote a CPU task, whch n turn s a sequence of k CPU nstructons I 1 I 2 I k. Because on a smple archtecture each nstructon begns wth a B-cycle to fetch the nstructon from the memory, no DMA data transfer can take place across two nstructons. Consequently, the effects of cycle-stealng on each nstructon can be analyzed ndependently, wthout consderng the other nstructons. The WCET of the CPU task A C when t executes concurrently wth DMA I/O s therefore bounded by the sum of the WCET of each nstructon executng concurrently wth DMA I/O. To bound the WCET of an nstructon I that executes concurrently wth DMA I/O, we frst use Eq. (2) to calculate the worst-case delay suffered by each sequence of E-cycles. We obtan the WCET of the nstructon, denoted by W(I ), by summng the executon tme of the nstructon when t executes alone and the worst-case delay of all E-cycles sequences n the nstructon. Smlarly, by Eq. (1), we obtan the maxmum unts of data the DMAC can transfer durng the executon of the nstructon. We denote ths value by M(I ). Fnally, we obtan the WCET of A C, denoted by W(A C ), by the equaton k W( A ) = W( I ), (3) C = 1 and the maxmum unts of data the DMAC can transfer durng the executon of A C, denoted by M(A C ), by the equaton k M( A ) = M( I ). (4) C = 1 The computaton of W(A C ) by Eq. (3) requres, as nputs, two parameters of the I/O bus, BMT and DT. The other nformaton needed by the equaton ncludes how many machne cycles each nstructon s composed of, the functon of each machne cycle, and the executon tme of each machne cycle. We can obtan ths nformaton from the reference manual provded by the manufacturer of the processor. 4. BOUNDING THE WCET OF A DMA I/O TASK Because a DMA I/O task proceeds by stealng bus cycles from executng nstructons, ts executon tme depends on the sequence of nstructons executng concurrently wth t. We generalze the problem of boundng the WCET of a DMA I/O task wth a workload that conssts of a DMA I/O task and K ndependent CPU tasks. The DMA I/O task, denoted by A D, transfers Z unts of data. Each of the K CPU tasks, denoted by A 1, A 2,, A K, s a sequence of CPU nstructons. Each CPU task has an arbtrary release

6 1234 TAI-YI HUANG, CHIN-CHIEH CHOU AND PO-YUAN CHEN tme, and these K CPU tasks are scheduled preemptvely. In contrast, the DMA I/O task A D s nonpreemptable. A D s ntalzed by a task other than the K CPU tasks. Consequently, A D may execute concurrently wth any of the K CPU tasks. The method presented here works under any schedulng algorthm. In the followng we frst descrbe three propertes revealed by a sequence of nstructons that execute concurrently wth the DMA I/O task A D. Based on these propertes we develop a recursve formula to compute the WCET of A D. The recursve formula gves the bass of a dynamc-programmng method whch can be used to bound the WCET of A D. To smplfy the dscusson, we assume that the CPU s never dle durng the executon of A D. We wll remove ths assumpton at the end of ths secton by modelng an dle perod as an nstructon of a specal CPU task. 4.1 The Propertes of a Concurrent Instructon Sequence Let S denote a sequence of nstructons I a I a+j executng concurrently wth the DMA I/O task A D. Because nterrupts are processed between nstructon cycles, A D and the frst nstructon I a begn at the same tme. Smlarly, A D and the last nstructon I a+j end at the same tme. Consequently, the WCET of the sequence S, denoted by W(S), s bounded by the sum of the WCET of each nstructon when t executes concurrently wth DMA I/O. That s W(S) = W(I a ) + + W(I a+j ). Fg. 4. The executon tme of a DMA I/O task. Example 1: Let A D execute concurrently wth a sequence of nstructons I a I a+j as shown n Fg. 4. The CPU sgnals the DMAC to start ts data transfer at tme t 1 and starts the executon of the frst nstructon I a at the same tme. The DMAC transfers the frst unt of data when the CPU enters the frst E-cycle. The DMAC sgnals the CPU the completon of the last unt of data durng the executon of the last nstructon I a+j. Because nterrupt sgnals are processed between nstructon cycles, the CPU s notfed the completon of A D at t 2, when the last nstructon I a+j completes ts executon. The executon tme of A D s therefore equal to (t 2 t 1 ), that s bounded by W(I a ) + + W(I a+j ). Property 1 The DMA I/O task A D and the sequence S begn and end at the same tme. The WCET of S s bounded by the sum of the WCET of each nstructon when t executes concurrently wth DMA I/O.

7 BOUNDING DMA INTERFERENCE ON HARD-REAL-TIME EMBEDDED SYSTEMS 1235 The DMAC must transfer the last unt of data durng the executon of the last nstructon I a+j. Because nterrupts are only processed between nstructon cycles, some of the E-cycles n I a+j may not be utlzed by the DMAC as shown by the example n Fg. 4. In contrast, because the DMA I/O task s nonpreemptable, the DMAC must fully utlze all the E-cycles n the rest of the nstructons to transfer data. Agan, let M(I ) be the maxmum unts of data transferred by the DMAC durng the executon of the nstructon I. The sequence of nstructons I a I a+j must satsfy a+ j 1 a+ j M( I ) < Z M( I ). = 1 = 1 Property 2 The DMAC must fully utlze all the E-cycles n every nstructon of S except I a+j. In addton, the last unt of data must be transferred durng the executon of I a+j. Because these K CPU tasks are scheduled preemptvely, the sequence S may contan nstructons from any of the K CPU tasks. Among the nstructons n I a I a+j, let S denote the set of nstructons from the CPU task A. S s ether an empty set or a subsequence of contguous nstructons of the task A. Property 3 Among the nstructons of S, the set of nstructons from the same CPU task must be a subsequence of contguous nstructons of the CPU task. 4.2 The Recursve Formula Let Y denote the set of all possble sequences of nstructons that may execute concurrently wth the DMA I/O task A D. Accordng to Property 1, W(S), the WCET of a sequence S, s smply the sum of the W(I) for every nstructon I S. Therefore, we can obtan the WCET of A D, denoted by W(A D ), as the maxmum W(S) for every S Y; that s W( A ) = max W( S). D S Y The dervaton Let us dvde Y nto K dsjont subsets Y 1, Y 2,, Y K n such a way that the subset Y α conssts of all the sequences where the last nstructon of each sequence s from the task A α. Let W (K,Z,α) denote the maxmum W(S) for every S Y α. We can redefne W(A D ) as W( AD) = max W( K, Z, α ). (5) 1 α K (m Let us further dvde Y α nto a number of dsjont subsets. Let Y 1,m 2,,m ) K α denote a subset of sequences n Y α such that each sequence S n ths subset has the followng property: the DMAC transfers m unts of data durng the executons of the nstructons from (m the task A, = 1 to K. Let W 1,m 2,,m K ) α denote the maxmum W(S) for every S (m Y 1,m 2,,m ) K α. We can defne W (K,Z,α) as

8 1236 TAI-YI HUANG, CHIN-CHIEH CHOU AND PO-YUAN CHEN W (K,Z,α) = max{w α (m 1,m 2,,m K ) }. (6) Because the DMA I/O task A D transfers Z unts of data n total, we have m 1 + m m K = Z. (7) In addton, because the last nstructon of each sequence S Y α (m 1,m 2,,m K ) s from the task A α, we have m α > 0 accordng to Property 2. And, m 0 for any α. That s 0 < m α, and 0 m for α. (8) To compute W α (m 1,m 2,,m K ), we frst defne f (m ) and p (m ). Let I a I a+j be a subsequence of contguous nstructons of the task A such that a+ j m = M( I ). (9) l= a l Let F m denote the set of all possble subsequences of A that satsfy Eq. (9). Agan, we use W(S) to denote the maxmum executon tme of a subsequence S when t executes concurrently wth DMA I/O. We defne f (m ) to be the maxmum W(S) for every S F m. That s f ( m ) = max W( S). (10) S F m Smlarly, let I a I a+j be a subsequence of contguous nstructons of the task A such that a+ j 1 a+ j M( Il ) < m M( Il). (11) l= a l= a Let P m denote the set of all possble subsequences of A that satsfy Eq. (11). We defne p (m ) as p ( m ) = max W( S). (12) m S P Let us get back to a sequence S Y α (m 1,m 2,,m K ). Accordng to Property 3, the sequence S s n fact the concatenaton of the subsequence S of each task A such that the DMAC transfers m unts of data durng the executon of the subsequence S, = 1 to K. In addton, because no DMA transfer can take place across two subsequences, W(S) s equal to the sum of W(S ), = 1 to K. Consequently, we can use f (m ) and p (m ) to defne W α (m 1,m 2,,m K ) as where W α (m 1,m 2,,m K ) = e 1 (m 1 ) + e 2 (m 2 ) + + e K (m K ) (13)

9 BOUNDING DMA INTERFERENCE ON HARD-REAL-TIME EMBEDDED SYSTEMS 1237 p( m) f = α, e( m) = f( m) f = α. (14) By replacng Eq. (8) wth the settngs of p (0) to, = 1 to K, we can generalze the defnton of W (K,Z,α) gven n Eqs. (6) to (8), (13), and (14) to the followng form W (K,Z,α) = max{e 1 (m 1 ) + e 2 (m 2 ) + + e K (m K )} where e (m ) s gven by Eq. (14) and the max functon s over all m 1, m 2,, m K such that (1) m 1 + m m K = Z, and (2) 0 m Z, = 1, 2,, K. By consderng m K separately, we can further rewrte the above formula as W = max {max{ e ( m ) + e ( m ) + + e ( m )} + e ( g)} ( KZ,, α ) K 1 K 1 K 0 g Z where the nner max functon s over all m 1, m 2,, m K-1 such that (1) m 1 + m m K-1 = Z g, and (2) 0 m Z g, = 1, 2,, K 1. Snce the nner term n the above formula s exactly W (K-1,Z-g,α), we smplfy t to W = max { W + e ( g)}. ( KZ,, α) ( K 1, Z g, α) K 0 g Z After consderng the termnatve condton of ths recursve formula, we obtan the defnton of W (K,Z,α) below W ( KZ,, α ) e1 ( Z) f K = 1, = max { W( K 1, Z g, α ) + ek( g)} f K > 1. 0 g Z (15) Agan, e (m ) s gven by Eq. (14). Fnally, Eqs. (5) and (15) together gve a recursve formula for computng the WCET of the DMA I/O task A D Table constructon The computaton of Eq. (15) requres frequent accesses to both f (m ) and p (m ). To avod computng the same f (m ) and p (m ) repeatedly, we pre-compute each f (m ) and p (m ), and store the results n the tables f[, m ] and p[, m ], respectvely, for = 1 to K and m = 0 to Z. We rewrte Eq. (14) as below to retreve pre-computed results from these two tables.

10 1238 TAI-YI HUANG, CHIN-CHIEH CHOU AND PO-YUAN CHEN p [, m ] f = α, e( m) = f[, m ] f α. (16) Fg. 5 lsts the procedure for constructng the tables f[α, z] and p[α, z] of a CPU task A α. Here we let U α denote the number of nstructons n A α. Intally, we set f[α, 0] to 0, f[α, z] to, z = 1 to Z. In addton, we set p[α, z] to, z = 0 to Z. We update the table f[α, z] each tme we locate a subsequence n A α that belongs to F α z and whose WCET s larger than the current value. Smlarly, we update the table p[α, z] each tme we locate a subsequence n A α that belongs to P α z and has a larger WCET. If at the end of the procedure an entry f[α, z] (or p[α, z]) stll has the value of, ths fact mples that t s mpossble to fnd n the task A α a subsequence of nstructons that belongs to F α z (or P α z ). Input: the CPU task A α, a sequence of U α nstructons. Output: the entres f[α, z] and p[α, z], z = 0, 1,, Z. Procedure: for z = 0 to Z do for j = 1 to U α do { 1. fnd a longest subsequence that starts wth the j-th nstructon and belongs to F z α ; 2. f (such a subsequence exsts) and (ts WCET s larger than f[α, z]) then set f[α, z] to the WCET of the subsequence; 3. fnd a longest subsequence that starts wth the j-th nstructon and belongs to P z α ; 4. f (such a subsequence exsts) and (ts WCET s larger than p[α, z]) then set p[α, z] to the WCET of the subsequence; } Fg. 5. The procedure that computes f[α, z] and p[α, z] for the task A α Runnng-tme complexty Instead of searchng through the sequence of nstructons repeatedly, the steps 1 and 3 of the procedure shown n Fg. 5 can be carred out n constant tme by utlzng the nformaton calculated n a prevous teraton of the loop. Specfcally, the subsequences that start wth the (j 1)-th nstructon can be used to locate the subsequences that start wth the j-th nstructon. Consequently, the runnng-tme complexty of the procedure shown n Fg. 5 can be optmzed to O(ZU α ). To construct the whole tables of f[k, z] and p[k, z], we apply ths procedure to each of the K CPU tasks. The tme complexty s K OZU ( ) k 1 k = O(ZU), where U s the sum of the number of nstructons of these K CPU tasks. The procedure shown n Fg. 6 uses the tables f[α, z] and p[α, z] together wth Eqs. (15) and (16) to compute W (K,Z,α). We mplement Eq. (5) by the for-loop below. Intally, we set W(A D ) to 0. At the end of the loop, W(A D ) returns the WCET of the DMA I/O task A D.

11 BOUNDING DMA INTERFERENCE ON HARD-REAL-TIME EMBEDDED SYSTEMS 1239 Input: the tables f[α, z] and p[α, z], z = 0, 1,, Z. the defntons of e (m ) gven n Eq. (16). Output: the value of W (k,z,α). Procedure: EQ15(k, z, α) 1. f (k == 1) then return e 1 (z); 2. set R to 0; 3. for g = 0 to z do { set T to (EQ15(k 1, z g, α) + e k (g)); f (T > R) then set R to T; } 4. return R; Fg. 6. The procedure that mplements Eq. (15). For α = 1 to K do { W (K,Z,α) = EQ15(K, Z, α); If (W (K,Z,α) > W(A D )) that set W(A D ) to W (K,Z,α) ; } The tme complexty for computng W (K,Z,α) wth the procedure shown n Fg. 6 s O(W (K,Z,α) ) = O((Z + 1) O(W (K-,Z,α) )) = O((Z + 1) K-1 ) = O(Z K ). Fnally, the tme complexty of computng W(A D ) wth the recursve formula s O(ZU) + O(KZ K ). In other words, the tme complexty of the recursve formula grows exponentally as the number of CPU tasks grow. 4.3 A Dynamc-Programmng Method To avod redundant computaton, we mplement Eq. (15) by the procedure shown n Fg. 7. The tme complexty of ths dynamc-programmng method s O(KZ 2 ), and the tme complexty of computng W(A D ) by ths procedure s O(K 2 Z 2 ). Because the tme complexty of buldng the tables f[k, z] and p[k, z] s O(ZU), the tme complexty of computng W(A D ) s O(ZU) + O(K 2 Z 2 ), where Z s the number of unts of data to be transferred by A D, K s the number of CPU tasks that may execute concurrently wth A D, and U s the sum of the number of nstructons of these K CPU tasks. Another advantage of mplementng Eq. (15) by the dynamc-programmng method s that the table W[k, z, α] bult for the purpose of boundng the WCET of A D can be used to bound the WCET of other DMA I/O tasks. For example, to compute the WCET of another DMA I/O task A D whch transfer Z unts of data, Z < Z, by Eq. (15) we need to compute frst W[K, Z, α]. Because W[K, Z, α] had already been computed n the process of computng the WCET of A D, we can use the results stored n the table drectly to compute the WCET of A D. Suppose that there are γ DMA I/O tasks that can execute concurrently wth these K CPU tasks, and each DMA I/O task transfers Z unts of data, = 1, 2,, γ. The tme complexty of boundng the WCETs of these DMA I/O tasks s

12 1240 TAI-YI HUANG, CHIN-CHIEH CHOU AND PO-YUAN CHEN Input: the tables f[k, z] and p[k, z], k = 1 to K, z = 0 to Z. the defntons of e (m ) gven n Eq. (16). Output: the table of W[k, z, α], k = 1 to K, z = 0 to Z. Procedure: 1. set W[1, z, α] to e 1 (z), z = 0 to Z. 2. for k = 2 to K do for z = 0 to Z do { set W[k, z, α] to ; for g = 0 to z do { f (W[k 1, z g, α] + e k (g) > W[k, z, α]) than { set W[k, z, α] to (W[k 1, z g, α] + e k (g)); } } } Fg. 7. A dynamc-programmng method for Eq. (15). O(Z max U) + O(K 2 Z 2 max) where Z max s the maxmum value of Z 1, Z 2,, Z γ. The dscusson thus far assumes the CPU to be never dle. We now remove ths assumpton. Suppose that there s an dle perod durng the executon of A D. Let m denote the number of unts of data the DMAC transfers durng ths perod. We model ths dle perod as an nstructon I l of a specal CPU task A K+1, called the background task. Because the DMAC takes at most (2 BMT + DT) to transfer a unt of data, the executon tme of ths perod s bounded by m (2 BMT + DT). That s M(I l ) = m, and W(I l ) = m (2 BMT + DT). (17) Furthermore, wth Eq. (17), the WCET of an nstructon I p n front of the dle perod can stll be bounded by W(I p ) as descrbed n secton 3, whether the nstructon I p ends wth a B-cycle or an E-cycle. Let S denote a mxed sequence of nstructons and dle perods that executes concurrently wth A D. Let S denote the new sequence of nstructons after replacng each dle perod n S wth an nstructon of the background task A K+1. The new sequence S holds the three propertes dscussed n secton 4.1. Consequently, by addng the background task A K+1 to the set of the K CPU tasks that can execute concurrently wth A D and settng f[k + 1, z] = p[k + 1, z] = z (2 BMT + DT), z = 0, 1,, Z, the dynamc-programmng method gven n Fg. 7 stll bounds the WCET of A D at the tme complexty of O(ZU) + O(K 2 Z 2 ) when CPU dle perods are allowed.

13 BOUNDING DMA INTERFERENCE ON HARD-REAL-TIME EMBEDDED SYSTEMS EXPERIMENTAL RESULTS We demonstrate the effectveness of our methods through exhaustve smulatons on a wdely-used embedded processor. Table 1 lsts the eght CPU tasks, each of whch s a random executon trace of a commonly-used program. We compled each program nto an MC68030 assembly program and executed on an MC68030 smulator wth randomlygenerated nput data to obtan the executon trace. Column 3 of Table 1 lsts the number of nstructons n each CPU task. Table 1. The CPU task set. Program Bref Descrpton Instructons QuckSort Recursve QuckSort 23,026 BubbleSort Sequental BubbleSort 65,726 FFT Fast Fourer Transform 249,107 Splne Cublc Splne Functon 209,837 Gaussan Gaussan Elmnaton 47,242 Mtxmul Matrx Multplcaton 36,789 Correlate Track-Correlate Functon 26,543 Mtxmu12 Loop-Unrolled Verson of Mtxmul 9,391 We obtaned from the Motorola manual [2] the tmng nformaton of each nstructon n the traces. The clock frequency of the mcroprocessor was 20 MHZ: the perod of a clock cycle T c was 50 ns. We assume a 0-wat memory was used n ths experment, and each DMA transfer of a unt of data took two clock cycles. Hence, we set DT to 100 ns. Fnally, BMT was 5 ns. 5.1 CPU Tasks For each CPU task A C lsted n Table 1, we frst used Eq. (3) to compute W(A C ). We next used Eq. (4) to compute M(A C ). We then compared our WCET predcton wth the one obtaned by the tradtonal pessmstc approach. Gven the CPU task A C and a DMA I/O task that transfers M(A C ) unts of data, whch are ready at the same tme, the pessmstc approach estmates the WCET of A C to be equal to the sum of the executon tme of A C when t executes alone and the executon tme of the DMA I/O task when t s done alone. We denote ths tradtonal pessmstc WCET predcton by W t (A C ). We use the percentage of reducton from W t (A C ) Wt ( AC) W( AC) R = W ( A ) t C to measure the performance of our method. We also nvestgated the relatonshp between the performance of our method and the computatonal requrement of a CPU task. We classfy all nstructons here nto two

14 1242 TAI-YI HUANG, CHIN-CHIEH CHOU AND PO-YUAN CHEN categores: long nstructons and short nstructons. An nstructon s a long one f durng ts executon; the CPU does not need the bus for 8 processor clock cycles or more. In contrast, durng the executon of a short nstructon, the CPU never allows any I/O devce to have the bus for such a long perod. For example, the nstructons MULU.W D1, D2 and DIVU.W D2, D0 are long nstructons, and MOVE.L (A3)+, D0 and ADD.L, D0, D1 are short nstructons. Column 2 of Table 2 gves the percentage of long nstructons n each CPU task. Table 2. The smulaton results for CPU tasks. Program Long Instructons % R n % QuckSort 0% 8% BubbleSort 0% 10% FFT 2% 19% Splne 3% 21% Gaussan 5% 25% Mtxmul 11% 35% Correlate 17% 38% Mtxmu12 22% 39% Column 3 of Table 2 gves the reducton percentage on each CPU task. Because the delay caused by cycle-stealng on each nstructon s bounded by Eq. (2), the overhead of each DMA transfer n a long nstructon s less than that n a short nstructon. In addton, more DMA data transfers can be carred out n a long nstructon than n a short nstructon. Therefore, our method produces a larger percentage of reducton on a CPU task wth a hgher percentage of long nstructons. Among the tested CPU tasks, Mtxmu12 s obtaned by unrollng the whole nnermost loop of Mtxmul. The loop-unrollng procedure sgnfcantly ncreases the percentage of long nstructons n the trace. As a result, our method produces a hgher percentage of reducton on the loop-unrolled verson: a 39% reducton from the most pessmstc WCET predcton s acheved. 5.2 DMA I/O Tasks We demonstrate the correctness of the dynamc-programmng method through exhaustve smulatons. To make exhaustve smulaton feasble, we executed the programs lsted n Table 1 wth a much smaller data set to obtan the CPU task set lsted n Table 3. Column 3 gves the number of nstructons n each smplfed CPU task. We frst used the dynamc-programmng method to compute the WCET of a DMA I/O task A D when t executes concurrently wth the eght CPU tasks. We next smulated the concurrent executon of these CPU tasks and A D under the round-robn schedulng algorthm and the fxed prorty assgnment algorthm, and recorded the executon tme of A D. CPU tasks were smulated for all possble combnatons of release tmes, and n the case of fxed prorty assgnment, all possble combnatons of prorty assgnments were smulated. We allowed schedulng ponts to occur only every 100 nstructons. We use W r (A D ) and W p (A D ) to denote the maxmum executon tmes of A D found by the smulaton when the CPU

15 BOUNDING DMA INTERFERENCE ON HARD-REAL-TIME EMBEDDED SYSTEMS 1243 Table 3. The smplfed CPU task set. Program Bref Descrpton Instructons QuckSort Recursve QuckSort 3,124 BubbleSort Sequental BubbleSort 2,763 FFT Fast Fourer Transform 3,662 Splne Cublc Splne Functon 2,101 Gaussan Gaussan Elmnaton 1,436 Mtxmul Matrx Multplcaton 1,170 Correlate Track-Correlate Functon 814 Mtxmu12 Loop-Unrolled Verson of Mtxmul 884 Table 4. The smulaton results for DMA I/O tasks. The length of the I/O task W(A D )/W r (A D ) W(A D )/W p (A D ) tasks are scheduled by the round-robn and fxed prorty assgnment schedulng algorthms, respectvely. We compared our WCET predcton W(A D ) aganst W r (A D ) and W p (A D ) to show the correctness of the dynamc-programmng method. Table 4 shows the expermental results for DMA I/O tasks that transfer dfferent unts of data. Rows 2 and 3 of Column 2 gve the values of W(A D )/W r (A D ) and W(A D )/ W p (A D ), respectvely, when the DMA I/O task A D transfers 250 unts of data. We also smulated the concurrent executon of the CPU task set and three other DMA I/O tasks whch transfer 500, 750, 1000 unts of data, and the results are shown n Columns 3, 4, and 5. As explaned n secton 4.3, our dynamc-programmng method only computes the WCET of the DMA I/O task that transfers 1000 unts of data. The WCETs of the other three DMA I/O tasks are obtaned n a table-drven manner. For every of the eght cases nvestgated n ths experment, our WCET predcton W(A D ) s always larger than the maxmum executon tme of the DMA I/O task recorded n the exhaustve smulatons. Our method overestmates the WCET for at most 6.3% when the CPU tasks are scheduled by the fxed prorty assgnment algorthm and the DMA I/O task transfers 250 unts of data. The percentage of overestmaton s smaller wth a longer DMA I/O task. Ths behavor results from the overestmaton of our method on the last nstructon of the sequence that executes concurrently wth the DMA I/O task. Obvously, the overestmaton wll have a smaller effect on the WCET predcton of a longer DMA I/O task. Fnally, our method stll produces 0.6% and 1.4% overestmaton on the WCET of the DMA I/O task that transfers 1000 unts of data at the round-robn and the fxed prorty assgnment schedulng algorthms, respectvely. It s caused by the 100-nstructon schedulng dstance. Ths lmt consderably trms down the set of possble nstructon sequences. We are confdent that, by allowng schedulng ponts to occur on every nstructon, the overestmaton by our method wll be practcally neglgble.

16 1244 TAI-YI HUANG, CHIN-CHIEH CHOU AND PO-YUAN CHEN 6. RELATED WORK Most of the prevous studes focused on boundng the WCET of CPU tasks [1, 3-8, 12, 15-18, 21-26, 29, 31, 32]. Muller et al. [23] developed a statc cache smulaton to bound the WCET of CPU tasks executed on a contemporary machne wth the nstructon cache. L and Malk [16] presented the mplct path-enumeraton method to convert the problem of boundng the WCET nto one of solvng a set of ILP constrants. L et al. [17] later extended ther approach to nclude the tmng analyss of both drect-mapped and set-assocatve caches. Lm et al. [18] proposed a tmng analyss technque for modern multple-ssue machnes such as superscalar processors. Km et al. [15] presented quanttatve analyss results on the mpacts of varous archtecture features on the accuracy of WCET predctons. Thelng et al. [31, 32] adopted abstract nterpretaton to analyze the performance of modern archtectures and ntegrated wth the mplct path-enumeraton method to bound the WCET. All of the above methods nvarably assume that a CPU task to be analyzed executes wthout any nterference of concurrently executng I/O tasks n the system. Huang et al. [13] frst attempts to bound the WCET of a CPU task when cycle-stealng DMA I/O s concurrently executng. Hahn et al. [9] bounded the worst-case DMA response tme n a fxed-prorty bus arbtraton protocol. However, these paper dd not address at all on how to bound the WCET of a concurrently executng cycle-stealng DMA I/O task. To our knowledge, our work s the frst one that attempts to bound the worst-case nterference between concurrently executng CPU tasks and cycle-stealng DMA I/O tasks. 7. CONCLUDING REMARKS Cycle-stealng DMA I/O operatons have often been dsabled n hard-real-tme embedded systems. In ths paper we frst presented an analyss for boundng the delay. Based on ths analyss, we developed a method for boundng the WCET of a CPU task. Smulaton results demonstrate that our method produces much tghter WCET predctons than the tradtonal pessmstc method, especally when the CPU task contans a large percentage of computaton-ntensve nstructons. We also derved a recursve formula for boundng the WCET of a cycle-stealng DMA I/O task executng concurrently wth a set of CPU tasks wth arbtrary release tmes and prorty assgnments. We reduced the runnng-tme complexty of the recursve formula wth a dynamc-programmng technque. Consequently, the WCET predcton table constructed by a full evaluaton of the dynamc-programmng method can be used to bound the WCETs of all cycle-stealng DMA I/O tasks executng concurrently wth the same set of CPU tasks. Our method of boundng the WCET of a cycle-stealng DMA I/O task s applcable on an embedded processor where each nstructon begns wth a B-cycle. Ths paper successfully provdes the frst soluton for the real-tme communty to fully utlze the bandwdth of the I/O bus n a hard-real-tme embedded system by allowng the concurrent executon of CPU tasks and cycle-stealng DMA I/O tasks.

17 BOUNDING DMA INTERFERENCE ON HARD-REAL-TIME EMBEDDED SYSTEMS 1245 REFERENCES 1. A. Coln and I. Puaut, Worst case executon tme analyss for a processor wth branch predcton, Journal of Real-Tme Systems, Vol. 18, 2000, pp Motorola, MC68030 Enhanced 32-bt Mcroprocessor: User s Manual, Prentce- Hall, Englewood Clffs, New Jersey, J. Engblom, A. Ermedahl, M. Sjoedn, J. Gubstafsson, and H. Hansson, Worst-case executon-tme analyss for embedded real-tme systems, Journal of Software Tools for Technology Transfer, Vol. 4, 2001, pp J. Engblom and A. Ermedahl, Ppelne tmng analyss usng a trace-drven smulator, n Proceedngs of the 6th Internatonal Conference on Real-Tme Computng Systems and Applcatons, 1999, pp J. Engblom and A. Ermedahl Modelng complex flows for worst-case executon tme analyss, n Proceedngs of the 21st Real-Tme System Symposum, 2000, pp C. Ferdnand, F. Martn, and R. Wlhelm. Applyng compler technques to cache behavor predcton, n Proceedngs of the ACM SIGPLAN Workshop on Languages, Complers, and Tools for Real-Tme Systems, 1997, pp C. Ferdnand and R. Wlhelm, Effcent and precse cache behavor predcton for real-tme systems, Journal of Real-Tme Systems, Vol. 17, 1999, pp R. Gupta and P. Gopnath, Correlaton analyss technques for refnng executon tme estmates of real-tme applcatons, n Proceedngs of the IEEE Workshop on Real-Tme Operatng Systems and Software, 1994, pp J. Hahn, R. Ha, S. L. Mn, and J. W. S. Lu, Analyss of worst case DMA response tme n a fxed-prorty bus arbtraton protocol, Journal of Real-Tme Systems, Vol. 23, 2002, pp H. Hansson, H. Lawson, O. Brdal, C. Erksson, S. Larsson, H. Lönn, and M. Strömberg, BASEMENT: an archtecture and methodology for dstrbuted automotve real-tme systems, IEEE Transactons on Computers, Vol. 46, 1997, pp D. Harel and A. Naamad, The STATEMATE semantcs of statecharts, ACM Transactons on Software Engneerng Method, Vol. 5, 1996, pp C. Healy, R. Arnold, F. Mueller, D. Whalley, and M. Harmon, Boundng ppelne and nstructon cache performance, IEEE Transactons on Computers, Vol. 48, 1999, pp T. Y. Huang, J. W. S. Lu, and D. Hull, A method for boundng the effect of DMA I/O nterference on program executon tme, n Proceedngs of the 17th Real-Tme System Symposum, 1996, pp K. Jeffay, D. F. Stanat, and C. U. Martel, On non-preemptve schedulng of perodc and sporadc tasks, n Proceedngs of the 12th Real-Tme System Symposum, 1991, pp S. K. Km, R. Ha, and S. L. Mn, Analyss of the mpacts of overestmaton sources on the accuracy of worst case tmng analyss, n Proceedngs of the 20th Real-Tme System Symposum, 1999, pp Y. T. S. L and S. Malk, Performance analyss of embedded software usng mplct path enumeraton, n Proceedngs of the 32nd ACM/IEEE Desgn Automaton Conference, 1995, pp

18 1246 TAI-YI HUANG, CHIN-CHIEH CHOU AND PO-YUAN CHEN 17. Y. T. S. L, S. Malk, and A. Wolfe, Cache modelng for real-tme software: beyond drect mapped nstructon caches, n Proceedngs of the 17th Real-Tme System Symposum, 1996, pp S. S. Lm, J. H. Han, J. Km, and S. L. Mn, A worst case tmng analyss technque for multple-ssue machnes, n Proceedngs of the 19th Real-Tme System Symposum, 1998, pp C. L. Lu and J. Layland, Schedulng algorthms for multprogrammng n a hard realtme envronment, Journal of the ACM, Vol. 10, 1973, pp J. W. S. Lu, W. K. Shh, K. J. Ln, R. Bettat, and J. Y. Chung, Imprecse computatons, IEEE Proceedngs, Vol. 82, 1994, pp T. Lundqvst and P. Stenström, An ntegrated path and tmng analyss method based on cycle-level symbolc executon, Journal of Real-Tme Systems, Vol. 17, 1999, pp T. Lundqvst and P. Stenström, Tmng anomales n dynamcally scheduled mcroprocessors, n Proceedngs of the 20th Real-Tme System Symposum, 1999, pp F. Mueller, D. Whalley, and M. Harmon, Predctng nstructon cache behavor, n Proceedngs of the ACM SIGPLAN Workshop on Languages, Complers, and Tools for Real-Tme Systems, G. Ottosson and M. Sjödn, Worst-case executon tme analyss for modern hardware archtectures, n Proceedngs of the ACM SIGPLAN Workshop on Languages, Complers and Tools for Real-Tme Systems, C. Y. Park and A. C. Shaw, Experments wth a program tmng tool based on source-level tmng schema, IEEE Computer, 1991, pp P. Puschner and C. Koza, Calculatng the maxmum executon tme of real-tme programs, Journal of Real-Tme Systems, Vol. 1, 1989, pp J. Rchert, Integraton of mechatronc desgn tools wth CAMeL, exemplfed by vehcle convoy control desgn, n Proceedngs of the IEEE Internatonal Symposum on Computer-Aded Control System Desgn, 1996, pp L. Sha, R. Rajkumar, and J. P. Lehoczky, Prorty nhertance protocols: An approach to real-tme synchronzaton, IEEE Transactons on Computers, Vol. 39, 1990, pp F. Stappert and P. Altenbernd, Complete worst-case executon tme analyss of straghtlne hard real-tme programs, Journal of Systems Archtecture, Vol. 46, 2000, pp J. Sun, M. Gardner, and J. W. S. Lu, Boundng completon tmes of jobs wth arbtrary release tmes, varable executon tmes, and resource sharng. IEEE Transactons on Software Engneerng, Vol. 23, 1997, pp H. Thelng and C. Ferdnand, Combnng abstract nterpretaton and ILP for mcroarchtecture modellng and program path analyss, n Proceedngs of the 19th Real-Tme System Symposum, 1998, pp H. Thelng, C. Ferdnand, and R. Wlhelm, Fast and precse WCET predcton by separated cache and path analyses, Journal of Real-Tme Systems, Vol. 18, 2000, pp The VMEbus Specfcaton, Motorola, 1985.

19 BOUNDING DMA INTERFERENCE ON HARD-REAL-TIME EMBEDDED SYSTEMS 1247 Ta-Y Huang ( 黃泰一 ) receved the B.S. degree n Computer Scence and Informaton Engneerng from Natonal Tawan Unversty n He receved both the M.S. and Ph.D. degrees from Unversty of Illnos at Urbana-Champagn n Computer Scence n 1994 and 1996, respectvely. From 1996 to 2001, he was a software desgn engneer n Wndows OS Kernel Performance Group, Mcrosoft Inc. Snce February 2002, he has been an assstant professor wth the Computer Scence Department at Natonal Tsng Hua Unversty, Tawan. He s currently the executve secretary of the Embedded Software Consortum, Mnstry of Educaton, Tawan. Hs research nterests nclude low-power embedded systems, realtme operatng systems, and hgh-performance clustered storages. He s a member of the IEEE and the ACM. Chh-Cheh Chou ( 周智杰 ) receved the B.S. degree n Computer Scence from Natonal Chung Cheng Unversty, Tawan and the M.S. degree n Computer Scence from Natonal Tsng Hua Unversty, Tawan. He s currently a software engneer at Trend Mcro Enterprse, Tawan. Hs projects concentrate on network securty applances. Po-Yuan Chen ( 陳柏元 ) receved the B.Sc and M.Sc. degrees from Computer Scence Department, Natonal Tsng Hua Unversty, Tawan, n 2002 and 2004, respectvely. He s currently a Ph.D. student n Computer Scence Department, Natonal Tsng Hua Unversty, Tawan. Hs research nterests nclude operatng systems, real-tme systems, hardware/software codesgn, dgtal sgnal processor desgn, and very large scale ntegrated crcut desgn.

AADL : about scheduling analysis

AADL : about scheduling analysis AADL : about schedulng analyss Schedulng analyss, what s t? Embedded real-tme crtcal systems have temporal constrants to meet (e.g. deadlne). Many systems are bult wth operatng systems provdng multtaskng

More information

Parallelism for Nested Loops with Non-uniform and Flow Dependences

Parallelism for Nested Loops with Non-uniform and Flow Dependences Parallelsm for Nested Loops wth Non-unform and Flow Dependences Sam-Jn Jeong Dept. of Informaton & Communcaton Engneerng, Cheonan Unversty, 5, Anseo-dong, Cheonan, Chungnam, 330-80, Korea. seong@cheonan.ac.kr

More information

Verification by testing

Verification by testing Real-Tme Systems Specfcaton Implementaton System models Executon-tme analyss Verfcaton Verfcaton by testng Dad? How do they know how much weght a brdge can handle? They drve bgger and bgger trucks over

More information

Maintaining temporal validity of real-time data on non-continuously executing resources

Maintaining temporal validity of real-time data on non-continuously executing resources Mantanng temporal valdty of real-tme data on non-contnuously executng resources Tan Ba, Hong Lu and Juan Yang Hunan Insttute of Scence and Technology, College of Computer Scence, 44, Yueyang, Chna Wuhan

More information

A mathematical programming approach to the analysis, design and scheduling of offshore oilfields

A mathematical programming approach to the analysis, design and scheduling of offshore oilfields 17 th European Symposum on Computer Aded Process Engneerng ESCAPE17 V. Plesu and P.S. Agach (Edtors) 2007 Elsever B.V. All rghts reserved. 1 A mathematcal programmng approach to the analyss, desgn and

More information

Virtual Memory. Background. No. 10. Virtual Memory: concept. Logical Memory Space (review) Demand Paging(1) Virtual Memory

Virtual Memory. Background. No. 10. Virtual Memory: concept. Logical Memory Space (review) Demand Paging(1) Virtual Memory Background EECS. Operatng System Fundamentals No. Vrtual Memory Prof. Hu Jang Department of Electrcal Engneerng and Computer Scence, York Unversty Memory-management methods normally requres the entre process

More information

Real-Time Systems. Real-Time Systems. Verification by testing. Verification by testing

Real-Time Systems. Real-Time Systems. Verification by testing. Verification by testing EDA222/DIT161 Real-Tme Systems, Chalmers/GU, 2014/2015 Lecture #8 Real-Tme Systems Real-Tme Systems Lecture #8 Specfcaton Professor Jan Jonsson Implementaton System models Executon-tme analyss Department

More information

Virtual Machine Migration based on Trust Measurement of Computer Node

Virtual Machine Migration based on Trust Measurement of Computer Node Appled Mechancs and Materals Onlne: 2014-04-04 ISSN: 1662-7482, Vols. 536-537, pp 678-682 do:10.4028/www.scentfc.net/amm.536-537.678 2014 Trans Tech Publcatons, Swtzerland Vrtual Machne Mgraton based on

More information

Assignment # 2. Farrukh Jabeen Algorithms 510 Assignment #2 Due Date: June 15, 2009.

Assignment # 2. Farrukh Jabeen Algorithms 510 Assignment #2 Due Date: June 15, 2009. Farrukh Jabeen Algorthms 51 Assgnment #2 Due Date: June 15, 29. Assgnment # 2 Chapter 3 Dscrete Fourer Transforms Implement the FFT for the DFT. Descrbed n sectons 3.1 and 3.2. Delverables: 1. Concse descrpton

More information

The Codesign Challenge

The Codesign Challenge ECE 4530 Codesgn Challenge Fall 2007 Hardware/Software Codesgn The Codesgn Challenge Objectves In the codesgn challenge, your task s to accelerate a gven software reference mplementaton as fast as possble.

More information

Real-time Scheduling

Real-time Scheduling Real-tme Schedulng COE718: Embedded System Desgn http://www.ee.ryerson.ca/~courses/coe718/ Dr. Gul N. Khan http://www.ee.ryerson.ca/~gnkhan Electrcal and Computer Engneerng Ryerson Unversty Overvew RTX

More information

6.854 Advanced Algorithms Petar Maymounkov Problem Set 11 (November 23, 2005) With: Benjamin Rossman, Oren Weimann, and Pouya Kheradpour

6.854 Advanced Algorithms Petar Maymounkov Problem Set 11 (November 23, 2005) With: Benjamin Rossman, Oren Weimann, and Pouya Kheradpour 6.854 Advanced Algorthms Petar Maymounkov Problem Set 11 (November 23, 2005) Wth: Benjamn Rossman, Oren Wemann, and Pouya Kheradpour Problem 1. We reduce vertex cover to MAX-SAT wth weghts, such that the

More information

Efficient Distributed File System (EDFS)

Efficient Distributed File System (EDFS) Effcent Dstrbuted Fle System (EDFS) (Sem-Centralzed) Debessay(Debsh) Fesehaye, Rahul Malk & Klara Naherstedt Unversty of Illnos-Urbana Champagn Contents Problem Statement, Related Work, EDFS Desgn Rate

More information

Compiler Design. Spring Register Allocation. Sample Exercises and Solutions. Prof. Pedro C. Diniz

Compiler Design. Spring Register Allocation. Sample Exercises and Solutions. Prof. Pedro C. Diniz Compler Desgn Sprng 2014 Regster Allocaton Sample Exercses and Solutons Prof. Pedro C. Dnz USC / Informaton Scences Insttute 4676 Admralty Way, Sute 1001 Marna del Rey, Calforna 90292 pedro@s.edu Regster

More information

Load Balancing for Hex-Cell Interconnection Network

Load Balancing for Hex-Cell Interconnection Network Int. J. Communcatons, Network and System Scences,,, - Publshed Onlne Aprl n ScRes. http://www.scrp.org/journal/jcns http://dx.do.org/./jcns.. Load Balancng for Hex-Cell Interconnecton Network Saher Manaseer,

More information

An Optimal Algorithm for Prufer Codes *

An Optimal Algorithm for Prufer Codes * J. Software Engneerng & Applcatons, 2009, 2: 111-115 do:10.4236/jsea.2009.22016 Publshed Onlne July 2009 (www.scrp.org/journal/jsea) An Optmal Algorthm for Prufer Codes * Xaodong Wang 1, 2, Le Wang 3,

More information

An Application of the Dulmage-Mendelsohn Decomposition to Sparse Null Space Bases of Full Row Rank Matrices

An Application of the Dulmage-Mendelsohn Decomposition to Sparse Null Space Bases of Full Row Rank Matrices Internatonal Mathematcal Forum, Vol 7, 2012, no 52, 2549-2554 An Applcaton of the Dulmage-Mendelsohn Decomposton to Sparse Null Space Bases of Full Row Rank Matrces Mostafa Khorramzadeh Department of Mathematcal

More information

CMPS 10 Introduction to Computer Science Lecture Notes

CMPS 10 Introduction to Computer Science Lecture Notes CPS 0 Introducton to Computer Scence Lecture Notes Chapter : Algorthm Desgn How should we present algorthms? Natural languages lke Englsh, Spansh, or French whch are rch n nterpretaton and meanng are not

More information

Solving two-person zero-sum game by Matlab

Solving two-person zero-sum game by Matlab Appled Mechancs and Materals Onlne: 2011-02-02 ISSN: 1662-7482, Vols. 50-51, pp 262-265 do:10.4028/www.scentfc.net/amm.50-51.262 2011 Trans Tech Publcatons, Swtzerland Solvng two-person zero-sum game by

More information

NUMERICAL SOLVING OPTIMAL CONTROL PROBLEMS BY THE METHOD OF VARIATIONS

NUMERICAL SOLVING OPTIMAL CONTROL PROBLEMS BY THE METHOD OF VARIATIONS ARPN Journal of Engneerng and Appled Scences 006-017 Asan Research Publshng Network (ARPN). All rghts reserved. NUMERICAL SOLVING OPTIMAL CONTROL PROBLEMS BY THE METHOD OF VARIATIONS Igor Grgoryev, Svetlana

More information

Support Vector Machines

Support Vector Machines /9/207 MIST.6060 Busness Intellgence and Data Mnng What are Support Vector Machnes? Support Vector Machnes Support Vector Machnes (SVMs) are supervsed learnng technques that analyze data and recognze patterns.

More information

An Investigation into Server Parameter Selection for Hierarchical Fixed Priority Pre-emptive Systems

An Investigation into Server Parameter Selection for Hierarchical Fixed Priority Pre-emptive Systems An Investgaton nto Server Parameter Selecton for Herarchcal Fxed Prorty Pre-emptve Systems R.I. Davs and A. Burns Real-Tme Systems Research Group, Department of omputer Scence, Unversty of York, YO10 5DD,

More information

Predicting the Worst-Case Execution Time of the Concurrent Execution. of Instructions and Cycle-Stealing DMA I/O Operations

Predicting the Worst-Case Execution Time of the Concurrent Execution. of Instructions and Cycle-Stealing DMA I/O Operations ACM SIGPLAN Workshop on Languages, Compilers and Tools for Real-Time Systems, La Jolla, California, June 1995. Predicting the Worst-Case Execution Time of the Concurrent Execution of Instructions and Cycle-Stealing

More information

The Shortest Path of Touring Lines given in the Plane

The Shortest Path of Touring Lines given in the Plane Send Orders for Reprnts to reprnts@benthamscence.ae 262 The Open Cybernetcs & Systemcs Journal, 2015, 9, 262-267 The Shortest Path of Tourng Lnes gven n the Plane Open Access Ljuan Wang 1,2, Dandan He

More information

Improvement of Spatial Resolution Using BlockMatching Based Motion Estimation and Frame. Integration

Improvement of Spatial Resolution Using BlockMatching Based Motion Estimation and Frame. Integration Improvement of Spatal Resoluton Usng BlockMatchng Based Moton Estmaton and Frame Integraton Danya Suga and Takayuk Hamamoto Graduate School of Engneerng, Tokyo Unversty of Scence, 6-3-1, Nuku, Katsuska-ku,

More information

Outline. Digital Systems. C.2: Gates, Truth Tables and Logic Equations. Truth Tables. Logic Gates 9/8/2011

Outline. Digital Systems. C.2: Gates, Truth Tables and Logic Equations. Truth Tables. Logic Gates 9/8/2011 9/8/2 2 Outlne Appendx C: The Bascs of Logc Desgn TDT4255 Computer Desgn Case Study: TDT4255 Communcaton Module Lecture 2 Magnus Jahre 3 4 Dgtal Systems C.2: Gates, Truth Tables and Logc Equatons All sgnals

More information

Sum of Linear and Fractional Multiobjective Programming Problem under Fuzzy Rules Constraints

Sum of Linear and Fractional Multiobjective Programming Problem under Fuzzy Rules Constraints Australan Journal of Basc and Appled Scences, 2(4): 1204-1208, 2008 ISSN 1991-8178 Sum of Lnear and Fractonal Multobjectve Programmng Problem under Fuzzy Rules Constrants 1 2 Sanjay Jan and Kalash Lachhwan

More information

Data Representation in Digital Design, a Single Conversion Equation and a Formal Languages Approach

Data Representation in Digital Design, a Single Conversion Equation and a Formal Languages Approach Data Representaton n Dgtal Desgn, a Sngle Converson Equaton and a Formal Languages Approach Hassan Farhat Unversty of Nebraska at Omaha Abstract- In the study of data representaton n dgtal desgn and computer

More information

Multitasking and Real-time Scheduling

Multitasking and Real-time Scheduling Multtaskng and Real-tme Schedulng EE8205: Embedded Computer Systems http://www.ee.ryerson.ca/~courses/ee8205/ Dr. Gul N. Khan http://www.ee.ryerson.ca/~gnkhan Electrcal and Computer Engneerng Ryerson Unversty

More information

2x x l. Module 3: Element Properties Lecture 4: Lagrange and Serendipity Elements

2x x l. Module 3: Element Properties Lecture 4: Lagrange and Serendipity Elements Module 3: Element Propertes Lecture : Lagrange and Serendpty Elements 5 In last lecture note, the nterpolaton functons are derved on the bass of assumed polynomal from Pascal s trangle for the fled varable.

More information

The Greedy Method. Outline and Reading. Change Money Problem. Greedy Algorithms. Applications of the Greedy Strategy. The Greedy Method Technique

The Greedy Method. Outline and Reading. Change Money Problem. Greedy Algorithms. Applications of the Greedy Strategy. The Greedy Method Technique //00 :0 AM Outlne and Readng The Greedy Method The Greedy Method Technque (secton.) Fractonal Knapsack Problem (secton..) Task Schedulng (secton..) Mnmum Spannng Trees (secton.) Change Money Problem Greedy

More information

Motivation. EE 457 Unit 4. Throughput vs. Latency. Performance Depends on View Point?! Computer System Performance. An individual user wants to:

Motivation. EE 457 Unit 4. Throughput vs. Latency. Performance Depends on View Point?! Computer System Performance. An individual user wants to: 4.1 4.2 Motvaton EE 457 Unt 4 Computer System Performance An ndvdual user wants to: Mnmze sngle program executon tme A datacenter owner wants to: Maxmze number of Mnmze ( ) http://e-tellgentnternetmarketng.com/webste/frustrated-computer-user-2/

More information

S1 Note. Basis functions.

S1 Note. Basis functions. S1 Note. Bass functons. Contents Types of bass functons...1 The Fourer bass...2 B-splne bass...3 Power and type I error rates wth dfferent numbers of bass functons...4 Table S1. Smulaton results of type

More information

Problem Definitions and Evaluation Criteria for Computational Expensive Optimization

Problem Definitions and Evaluation Criteria for Computational Expensive Optimization Problem efntons and Evaluaton Crtera for Computatonal Expensve Optmzaton B. Lu 1, Q. Chen and Q. Zhang 3, J. J. Lang 4, P. N. Suganthan, B. Y. Qu 6 1 epartment of Computng, Glyndwr Unversty, UK Faclty

More information

Concurrent Apriori Data Mining Algorithms

Concurrent Apriori Data Mining Algorithms Concurrent Apror Data Mnng Algorthms Vassl Halatchev Department of Electrcal Engneerng and Computer Scence York Unversty, Toronto October 8, 2015 Outlne Why t s mportant Introducton to Assocaton Rule Mnng

More information

Allowing Cycle-Stealing Direct Memory Access I/O. Concurrent with Hard-Real-Time Programs

Allowing Cycle-Stealing Direct Memory Access I/O. Concurrent with Hard-Real-Time Programs To appear in: Int. Conf. on Parallel and Distributed Systems, ICPADS'96, June 3-6, 1996, Tokyo Allowing Cycle-Stealing Direct Memory Access I/O Concurrent with Hard-Real-Time Programs Tai-Yi Huang, Jane

More information

Lecture 7 Real Time Task Scheduling. Forrest Brewer

Lecture 7 Real Time Task Scheduling. Forrest Brewer Lecture 7 Real Tme Task Schedulng Forrest Brewer Real Tme ANSI defnes real tme as A Real tme process s a process whch delvers the results of processng n a gven tme span A data may requre processng at a

More information

Simulation Based Analysis of FAST TCP using OMNET++

Simulation Based Analysis of FAST TCP using OMNET++ Smulaton Based Analyss of FAST TCP usng OMNET++ Umar ul Hassan 04030038@lums.edu.pk Md Term Report CS678 Topcs n Internet Research Sprng, 2006 Introducton Internet traffc s doublng roughly every 3 months

More information

A Frame Packing Mechanism Using PDO Communication Service within CANopen

A Frame Packing Mechanism Using PDO Communication Service within CANopen 28 A Frame Packng Mechansm Usng PDO Communcaton Servce wthn CANopen Mnkoo Kang and Kejn Park Dvson of Industral & Informaton Systems Engneerng, Ajou Unversty, Suwon, Gyeongg-do, South Korea Summary The

More information

Learning the Kernel Parameters in Kernel Minimum Distance Classifier

Learning the Kernel Parameters in Kernel Minimum Distance Classifier Learnng the Kernel Parameters n Kernel Mnmum Dstance Classfer Daoqang Zhang 1,, Songcan Chen and Zh-Hua Zhou 1* 1 Natonal Laboratory for Novel Software Technology Nanjng Unversty, Nanjng 193, Chna Department

More information

Parallel Solutions of Indexed Recurrence Equations

Parallel Solutions of Indexed Recurrence Equations Parallel Solutons of Indexed Recurrence Equatons Yos Ben-Asher Dep of Math and CS Hafa Unversty 905 Hafa, Israel yos@mathcshafaacl Gad Haber IBM Scence and Technology 905 Hafa, Israel haber@hafascvnetbmcom

More information

Related-Mode Attacks on CTR Encryption Mode

Related-Mode Attacks on CTR Encryption Mode Internatonal Journal of Network Securty, Vol.4, No.3, PP.282 287, May 2007 282 Related-Mode Attacks on CTR Encrypton Mode Dayn Wang, Dongda Ln, and Wenlng Wu (Correspondng author: Dayn Wang) Key Laboratory

More information

Module Management Tool in Software Development Organizations

Module Management Tool in Software Development Organizations Journal of Computer Scence (5): 8-, 7 ISSN 59-66 7 Scence Publcatons Management Tool n Software Development Organzatons Ahmad A. Al-Rababah and Mohammad A. Al-Rababah Faculty of IT, Al-Ahlyyah Amman Unversty,

More information

Tsinghua University at TAC 2009: Summarizing Multi-documents by Information Distance

Tsinghua University at TAC 2009: Summarizing Multi-documents by Information Distance Tsnghua Unversty at TAC 2009: Summarzng Mult-documents by Informaton Dstance Chong Long, Mnle Huang, Xaoyan Zhu State Key Laboratory of Intellgent Technology and Systems, Tsnghua Natonal Laboratory for

More information

Real-time Fault-tolerant Scheduling Algorithm for Distributed Computing Systems

Real-time Fault-tolerant Scheduling Algorithm for Distributed Computing Systems Real-tme Fault-tolerant Schedulng Algorthm for Dstrbuted Computng Systems Yun Lng, Y Ouyang College of Computer Scence and Informaton Engneerng Zheang Gongshang Unversty Postal code: 310018 P.R.CHINA {ylng,

More information

Space-Optimal, Wait-Free Real-Time Synchronization

Space-Optimal, Wait-Free Real-Time Synchronization 1 Space-Optmal, Wat-Free Real-Tme Synchronzaton Hyeonjoong Cho, Bnoy Ravndran ECE Dept., Vrgna Tech Blacksburg, VA 24061, USA {hjcho,bnoy}@vt.edu E. Douglas Jensen The MITRE Corporaton Bedford, MA 01730,

More information

Delay Variation Optimized Traffic Allocation Based on Network Calculus for Multi-path Routing in Wireless Mesh Networks

Delay Variation Optimized Traffic Allocation Based on Network Calculus for Multi-path Routing in Wireless Mesh Networks Appl. Math. Inf. Sc. 7, No. 2L, 467-474 2013) 467 Appled Mathematcs & Informaton Scences An Internatonal Journal http://dx.do.org/10.12785/ams/072l13 Delay Varaton Optmzed Traffc Allocaton Based on Network

More information

WCET-Directed Dynamic Scratchpad Memory Allocation of Data

WCET-Directed Dynamic Scratchpad Memory Allocation of Data WCET-Drected Dynamc Scratchpad Memory Allocaton of Data Jean-Franços Deverge and Isabelle Puaut Unversté Européenne de Bretagne / IRISA, Rennes, France Abstract Many embedded systems feature processors

More information

Kent State University CS 4/ Design and Analysis of Algorithms. Dept. of Math & Computer Science LECT-16. Dynamic Programming

Kent State University CS 4/ Design and Analysis of Algorithms. Dept. of Math & Computer Science LECT-16. Dynamic Programming CS 4/560 Desgn and Analyss of Algorthms Kent State Unversty Dept. of Math & Computer Scence LECT-6 Dynamc Programmng 2 Dynamc Programmng Dynamc Programmng, lke the dvde-and-conquer method, solves problems

More information

Cluster Analysis of Electrical Behavior

Cluster Analysis of Electrical Behavior Journal of Computer and Communcatons, 205, 3, 88-93 Publshed Onlne May 205 n ScRes. http://www.scrp.org/ournal/cc http://dx.do.org/0.4236/cc.205.350 Cluster Analyss of Electrcal Behavor Ln Lu Ln Lu, School

More information

Positive Semi-definite Programming Localization in Wireless Sensor Networks

Positive Semi-definite Programming Localization in Wireless Sensor Networks Postve Sem-defnte Programmng Localzaton n Wreless Sensor etworks Shengdong Xe 1,, Jn Wang, Aqun Hu 1, Yunl Gu, Jang Xu, 1 School of Informaton Scence and Engneerng, Southeast Unversty, 10096, anjng Computer

More information

Assembler. Building a Modern Computer From First Principles.

Assembler. Building a Modern Computer From First Principles. Assembler Buldng a Modern Computer From Frst Prncples www.nand2tetrs.org Elements of Computng Systems, Nsan & Schocken, MIT Press, www.nand2tetrs.org, Chapter 6: Assembler slde Where we are at: Human Thought

More information

Problem Set 3 Solutions

Problem Set 3 Solutions Introducton to Algorthms October 4, 2002 Massachusetts Insttute of Technology 6046J/18410J Professors Erk Demane and Shaf Goldwasser Handout 14 Problem Set 3 Solutons (Exercses were not to be turned n,

More information

Determining the Optimal Bandwidth Based on Multi-criterion Fusion

Determining the Optimal Bandwidth Based on Multi-criterion Fusion Proceedngs of 01 4th Internatonal Conference on Machne Learnng and Computng IPCSIT vol. 5 (01) (01) IACSIT Press, Sngapore Determnng the Optmal Bandwdth Based on Mult-crteron Fuson Ha-L Lang 1+, Xan-Mn

More information

Course Introduction. Algorithm 8/31/2017. COSC 320 Advanced Data Structures and Algorithms. COSC 320 Advanced Data Structures and Algorithms

Course Introduction. Algorithm 8/31/2017. COSC 320 Advanced Data Structures and Algorithms. COSC 320 Advanced Data Structures and Algorithms Course Introducton Course Topcs Exams, abs, Proects A quc loo at a few algorthms 1 Advanced Data Structures and Algorthms Descrpton: We are gong to dscuss algorthm complexty analyss, algorthm desgn technques

More information

Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from Hennessy & Patterson / 2003 Elsevier

Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from Hennessy & Patterson / 2003 Elsevier Some materal adapted from Mohamed Youns, UMBC CMSC 611 Spr 2003 course sldes Some materal adapted from Hennessy & Patterson / 2003 Elsever Scence Performance = 1 Executon tme Speedup = Performance (B)

More information

A Binarization Algorithm specialized on Document Images and Photos

A Binarization Algorithm specialized on Document Images and Photos A Bnarzaton Algorthm specalzed on Document mages and Photos Ergna Kavalleratou Dept. of nformaton and Communcaton Systems Engneerng Unversty of the Aegean kavalleratou@aegean.gr Abstract n ths paper, a

More information

Mixed-Criticality Scheduling on Multiprocessors using Task Grouping

Mixed-Criticality Scheduling on Multiprocessors using Task Grouping Mxed-Crtcalty Schedulng on Multprocessors usng Task Groupng Jankang Ren Lnh Th Xuan Phan School of Software Technology, Dalan Unversty of Technology, Chna Computer and Informaton Scence Department, Unversty

More information

A Generic and Compositional Framework for Multicore Response Time Analysis

A Generic and Compositional Framework for Multicore Response Time Analysis A Generc and Compostonal Framework for Multcore Response Tme Analyss Sebastan Altmeyer Unversty of Luxembourg Unversty of Amsterdam Clare Maza Grenoble INP Vermag Robert I. Davs Unversty of York INRIA,

More information

Reliability and Performance Models for Grid Computing

Reliability and Performance Models for Grid Computing Relablty and Performance Models for Grd Computng Yuan-Shun Da,2, Jack Dongarra,3,4 Department of Electrcal Engneerng and Computer Scence, Unversty of Tennessee, Knoxvlle 2 Department of Industral and Informaton

More information

Programming in Fortran 90 : 2017/2018

Programming in Fortran 90 : 2017/2018 Programmng n Fortran 90 : 2017/2018 Programmng n Fortran 90 : 2017/2018 Exercse 1 : Evaluaton of functon dependng on nput Wrte a program who evaluate the functon f (x,y) for any two user specfed values

More information

A Predictable Execution Model for COTS-based Embedded Systems

A Predictable Execution Model for COTS-based Embedded Systems 2011 17th IEEE Real-Tme and Embedded Technology and Applcatons Symposum A Predctable Executon Model for COTS-based Embedded Systems Rodolfo Pellzzon, Emlano Bett, Stanley Bak, Gang Yao, John Crswell, Marco

More information

Dynamic Voltage Scaling of Supply and Body Bias Exploiting Software Runtime Distribution

Dynamic Voltage Scaling of Supply and Body Bias Exploiting Software Runtime Distribution Dynamc Voltage Scalng of Supply and Body Bas Explotng Software Runtme Dstrbuton Sungpack Hong EE Department Stanford Unversty Sungjoo Yoo, Byeong Bn, Kyu-Myung Cho, Soo-Kwan Eo Samsung Electroncs Taehwan

More information

Video Proxy System for a Large-scale VOD System (DINA)

Video Proxy System for a Large-scale VOD System (DINA) Vdeo Proxy System for a Large-scale VOD System (DINA) KWUN-CHUNG CHAN #, KWOK-WAI CHEUNG *# #Department of Informaton Engneerng *Centre of Innovaton and Technology The Chnese Unversty of Hong Kong SHATIN,

More information

Parallel matrix-vector multiplication

Parallel matrix-vector multiplication Appendx A Parallel matrx-vector multplcaton The reduced transton matrx of the three-dmensonal cage model for gel electrophoress, descrbed n secton 3.2, becomes excessvely large for polymer lengths more

More information

Analysis of Collaborative Distributed Admission Control in x Networks

Analysis of Collaborative Distributed Admission Control in x Networks 1 Analyss of Collaboratve Dstrbuted Admsson Control n 82.11x Networks Thnh Nguyen, Member, IEEE, Ken Nguyen, Member, IEEE, Lnha He, Member, IEEE, Abstract Wth the recent surge of wreless home networks,

More information

Life Tables (Times) Summary. Sample StatFolio: lifetable times.sgp

Life Tables (Times) Summary. Sample StatFolio: lifetable times.sgp Lfe Tables (Tmes) Summary... 1 Data Input... 2 Analyss Summary... 3 Survval Functon... 5 Log Survval Functon... 6 Cumulatve Hazard Functon... 7 Percentles... 7 Group Comparsons... 8 Summary The Lfe Tables

More information

Chapter 1. Introduction

Chapter 1. Introduction Chapter 1 Introducton 1.1 Parallel Processng There s a contnual demand for greater computatonal speed from a computer system than s currently possble (.e. sequental systems). Areas need great computatonal

More information

CS 268: Lecture 8 Router Support for Congestion Control

CS 268: Lecture 8 Router Support for Congestion Control CS 268: Lecture 8 Router Support for Congeston Control Ion Stoca Computer Scence Dvson Department of Electrcal Engneerng and Computer Scences Unversty of Calforna, Berkeley Berkeley, CA 9472-1776 Router

More information

Priority-Based Scheduling Algorithm for Downlink Traffics in IEEE Networks

Priority-Based Scheduling Algorithm for Downlink Traffics in IEEE Networks Prorty-Based Schedulng Algorthm for Downlnk Traffcs n IEEE 80.6 Networks Ja-Mng Lang, Jen-Jee Chen, You-Chun Wang, Yu-Chee Tseng, and Bao-Shuh P. Ln Department of Computer Scence Natonal Chao-Tung Unversty,

More information

Comparison of Heuristics for Scheduling Independent Tasks on Heterogeneous Distributed Environments

Comparison of Heuristics for Scheduling Independent Tasks on Heterogeneous Distributed Environments Comparson of Heurstcs for Schedulng Independent Tasks on Heterogeneous Dstrbuted Envronments Hesam Izakan¹, Ath Abraham², Senor Member, IEEE, Václav Snášel³ ¹ Islamc Azad Unversty, Ramsar Branch, Ramsar,

More information

Term Weighting Classification System Using the Chi-square Statistic for the Classification Subtask at NTCIR-6 Patent Retrieval Task

Term Weighting Classification System Using the Chi-square Statistic for the Classification Subtask at NTCIR-6 Patent Retrieval Task Proceedngs of NTCIR-6 Workshop Meetng, May 15-18, 2007, Tokyo, Japan Term Weghtng Classfcaton System Usng the Ch-square Statstc for the Classfcaton Subtask at NTCIR-6 Patent Retreval Task Kotaro Hashmoto

More information

TECHNIQUE OF FORMATION HOMOGENEOUS SAMPLE SAME OBJECTS. Muradaliyev A.Z.

TECHNIQUE OF FORMATION HOMOGENEOUS SAMPLE SAME OBJECTS. Muradaliyev A.Z. TECHNIQUE OF FORMATION HOMOGENEOUS SAMPLE SAME OBJECTS Muradalyev AZ Azerbajan Scentfc-Research and Desgn-Prospectng Insttute of Energetc AZ1012, Ave HZardab-94 E-mal:aydn_murad@yahoocom Importance of

More information

A Parallelization Design of JavaScript Execution Engine

A Parallelization Design of JavaScript Execution Engine , pp.171-184 http://dx.do.org/10.14257/mue.2014.9.7.15 A Parallelzaton Desgn of JavaScrpt Executon Engne Duan Huca 1,2, N Hong 2, Deng Feng 2 and Hu Lnln 2 1 Natonal Network New eda Engneerng Research

More information

CHAPTER 2 PROPOSED IMPROVED PARTICLE SWARM OPTIMIZATION

CHAPTER 2 PROPOSED IMPROVED PARTICLE SWARM OPTIMIZATION 24 CHAPTER 2 PROPOSED IMPROVED PARTICLE SWARM OPTIMIZATION The present chapter proposes an IPSO approach for multprocessor task schedulng problem wth two classfcatons, namely, statc ndependent tasks and

More information

Greedy Technique - Definition

Greedy Technique - Definition Greedy Technque Greedy Technque - Defnton The greedy method s a general algorthm desgn paradgm, bult on the follong elements: confguratons: dfferent choces, collectons, or values to fnd objectve functon:

More information

Scheduling Remote Access to Scientific Instruments in Cyberinfrastructure for Education and Research

Scheduling Remote Access to Scientific Instruments in Cyberinfrastructure for Education and Research Schedulng Remote Access to Scentfc Instruments n Cybernfrastructure for Educaton and Research Je Yn 1, Junwe Cao 2,3,*, Yuexuan Wang 4, Lanchen Lu 1,3 and Cheng Wu 1,3 1 Natonal CIMS Engneerng and Research

More information

Petri Net Based Software Dependability Engineering

Petri Net Based Software Dependability Engineering Proc. RELECTRONIC 95, Budapest, pp. 181-186; October 1995 Petr Net Based Software Dependablty Engneerng Monka Hener Brandenburg Unversty of Technology Cottbus Computer Scence Insttute Postbox 101344 D-03013

More information

GSLM Operations Research II Fall 13/14

GSLM Operations Research II Fall 13/14 GSLM 58 Operatons Research II Fall /4 6. Separable Programmng Consder a general NLP mn f(x) s.t. g j (x) b j j =. m. Defnton 6.. The NLP s a separable program f ts objectve functon and all constrants are

More information

Performance Evaluation

Performance Evaluation Performance Evaluaton [Ch. ] What s performance? of a car? of a car wash? of a TV? How should we measure the performance of a computer? The response tme (or wall-clock tme) t takes to complete a task?

More information

ELEC 377 Operating Systems. Week 6 Class 3

ELEC 377 Operating Systems. Week 6 Class 3 ELEC 377 Operatng Systems Week 6 Class 3 Last Class Memory Management Memory Pagng Pagng Structure ELEC 377 Operatng Systems Today Pagng Szes Vrtual Memory Concept Demand Pagng ELEC 377 Operatng Systems

More information

Sequential search. Building Java Programs Chapter 13. Sequential search. Sequential search

Sequential search. Building Java Programs Chapter 13. Sequential search. Sequential search Sequental search Buldng Java Programs Chapter 13 Searchng and Sortng sequental search: Locates a target value n an array/lst by examnng each element from start to fnsh. How many elements wll t need to

More information

Fast Computation of Shortest Path for Visiting Segments in the Plane

Fast Computation of Shortest Path for Visiting Segments in the Plane Send Orders for Reprnts to reprnts@benthamscence.ae 4 The Open Cybernetcs & Systemcs Journal, 04, 8, 4-9 Open Access Fast Computaton of Shortest Path for Vstng Segments n the Plane Ljuan Wang,, Bo Jang

More information

Combined Functional Partitioning and Communication Speed Selection for Networked Voltage-Scalable Processors Λ

Combined Functional Partitioning and Communication Speed Selection for Networked Voltage-Scalable Processors Λ Combned Functonal Parttonng and Communcaton Speed Selecton for Networked Voltage-Scalable Processors Λ Jnfeng Lu, Pa H. Chou, Nader Bagherzadeh epartment of Electrcal & Computer Engneerng Unversty of Calforna,

More information

Brave New World Pseudocode Reference

Brave New World Pseudocode Reference Brave New World Pseudocode Reference Pseudocode s a way to descrbe how to accomplsh tasks usng basc steps lke those a computer mght perform. In ths week s lab, you'll see how a form of pseudocode can be

More information

Memory Modeling in ESL-RTL Equivalence Checking

Memory Modeling in ESL-RTL Equivalence Checking 11.4 Memory Modelng n ESL-RTL Equvalence Checkng Alfred Koelbl 2025 NW Cornelus Pass Rd. Hllsboro, OR 97124 koelbl@synopsys.com Jerry R. Burch 2025 NW Cornelus Pass Rd. Hllsboro, OR 97124 burch@synopsys.com

More information

Type-2 Fuzzy Non-uniform Rational B-spline Model with Type-2 Fuzzy Data

Type-2 Fuzzy Non-uniform Rational B-spline Model with Type-2 Fuzzy Data Malaysan Journal of Mathematcal Scences 11(S) Aprl : 35 46 (2017) Specal Issue: The 2nd Internatonal Conference and Workshop on Mathematcal Analyss (ICWOMA 2016) MALAYSIAN JOURNAL OF MATHEMATICAL SCIENCES

More information

Reliability and Energy-aware Cache Reconfiguration for Embedded Systems

Reliability and Energy-aware Cache Reconfiguration for Embedded Systems Relablty and Energy-aware Cache Reconfguraton for Embedded Systems Yuanwen Huang and Prabhat Mshra Department of Computer and Informaton Scence and Engneerng Unversty of Florda, Ganesvlle FL 326-62, USA

More information

Hermite Splines in Lie Groups as Products of Geodesics

Hermite Splines in Lie Groups as Products of Geodesics Hermte Splnes n Le Groups as Products of Geodescs Ethan Eade Updated May 28, 2017 1 Introducton 1.1 Goal Ths document defnes a curve n the Le group G parametrzed by tme and by structural parameters n the

More information

An Entropy-Based Approach to Integrated Information Needs Assessment

An Entropy-Based Approach to Integrated Information Needs Assessment Dstrbuton Statement A: Approved for publc release; dstrbuton s unlmted. An Entropy-Based Approach to ntegrated nformaton Needs Assessment June 8, 2004 Wllam J. Farrell Lockheed Martn Advanced Technology

More information

Burst Round Robin as a Proportional-Share Scheduling Algorithm

Burst Round Robin as a Proportional-Share Scheduling Algorithm Burst Round Robn as a Proportonal-Share Schedulng Algorthm Tarek Helmy * Abdelkader Dekdouk ** * College of Computer Scence & Engneerng, Kng Fahd Unversty of Petroleum and Mnerals, Dhahran 31261, Saud

More information

A comparison of MPCP and MSRP when sharing resources in the Janus multiple-processor on a chip platform

A comparison of MPCP and MSRP when sharing resources in the Janus multiple-processor on a chip platform A comparson of MPCP and MSRP when sharng resources n the Janus multple-processor on a chp platform Paolo Ga, Marco D Natale, Guseppe Lpar, Scuola Superore Sant Anna, Psa, Italy {pj,marco,lpar}@sssup.t

More information

Constructing Minimum Connected Dominating Set: Algorithmic approach

Constructing Minimum Connected Dominating Set: Algorithmic approach Constructng Mnmum Connected Domnatng Set: Algorthmc approach G.N. Puroht and Usha Sharma Centre for Mathematcal Scences, Banasthal Unversty, Rajasthan 304022 usha.sharma94@yahoo.com Abstract: Connected

More information

Wishing you all a Total Quality New Year!

Wishing you all a Total Quality New Year! Total Qualty Management and Sx Sgma Post Graduate Program 214-15 Sesson 4 Vnay Kumar Kalakband Assstant Professor Operatons & Systems Area 1 Wshng you all a Total Qualty New Year! Hope you acheve Sx sgma

More information

Fibre-Optic AWG-based Real-Time Networks

Fibre-Optic AWG-based Real-Time Networks Fbre-Optc AWG-based Real-Tme Networks Krstna Kunert, Annette Böhm, Magnus Jonsson, School of Informaton Scence, Computer and Electrcal Engneerng, Halmstad Unversty {Magnus.Jonsson, Krstna.Kunert}@de.hh.se

More information

Intra-Parametric Analysis of a Fuzzy MOLP

Intra-Parametric Analysis of a Fuzzy MOLP Intra-Parametrc Analyss of a Fuzzy MOLP a MIAO-LING WANG a Department of Industral Engneerng and Management a Mnghsn Insttute of Technology and Hsnchu Tawan, ROC b HSIAO-FAN WANG b Insttute of Industral

More information

an assocated logc allows the proof of safety and lveness propertes. The Unty model nvolves on the one hand a programmng language and, on the other han

an assocated logc allows the proof of safety and lveness propertes. The Unty model nvolves on the one hand a programmng language and, on the other han UNITY as a Tool for Desgn and Valdaton of a Data Replcaton System Phlppe Quennec Gerard Padou CENA IRIT-ENSEEIHT y Nnth Internatonal Conference on Systems Engneerng Unversty of Nevada, Las Vegas { 14-16

More information

A Unified Framework for Semantics and Feature Based Relevance Feedback in Image Retrieval Systems

A Unified Framework for Semantics and Feature Based Relevance Feedback in Image Retrieval Systems A Unfed Framework for Semantcs and Feature Based Relevance Feedback n Image Retreval Systems Ye Lu *, Chunhu Hu 2, Xngquan Zhu 3*, HongJang Zhang 2, Qang Yang * School of Computng Scence Smon Fraser Unversty

More information

Analysis of Dependencies of Checkpoint Cost and Checkpoint Interval of Fault Tolerant MPI Applications

Analysis of Dependencies of Checkpoint Cost and Checkpoint Interval of Fault Tolerant MPI Applications Mallkarjuna Shastry P M et al. / (IJCSE) Internatonal Journal on Computer Scence and Engneerng Analyss of Dependences of Checkpont Cost and Checkpont Interval of Fault Tolerant MPI Applcatons Mallkarjuna

More information

Performance Study of Parallel Programming on Cloud Computing Environments Using MapReduce

Performance Study of Parallel Programming on Cloud Computing Environments Using MapReduce Performance Study of Parallel Programmng on Cloud Computng Envronments Usng MapReduce Wen-Chung Shh, Shan-Shyong Tseng Department of Informaton Scence and Applcatons Asa Unversty Tachung, 41354, Tawan

More information