Two Processor Scheduling with Real Release Times and Deadlines

Size: px
Start display at page:

Download "Two Processor Scheduling with Real Release Times and Deadlines"

Transcription

1 Two Processor Scheduling with Real Release Times and Deadlines Hui Wu School of Computing National University of Singapore 3 Science Drive 2, Singapore wuh@comp.nus.edu.sg Joxan Jaffar School of Computing National University of Singapore 3 Science Drive 2, Singapore joxan@comp.nus.edu.sg ABSTRACT In a hard real-time system, critical tasks are subject to timing constraints such as release times and deadlines. All timing constraints must be satisfied when tasks are executed. Nevertheless, given a set of tasks, finding a feasible schedule which satisfies all timing constraints is NP-complete even on one processor. In this paper, we study the following special non-preemptive two processor scheduling problem: Given a set of UET (Unit Execution Time) tasks with arbitrary precedence constraints, individual real release times and deadlines, find a feasible schedule on two identical processors whenever one exists. The complexity status of this problem has been open for a long time. we propose the first polynomial algorithm for this problem. Our algorithm is underpinned by the key consistency notion: successor-tree-consistency. The time complexity of our algorithm is O(n 4 ), where n is the number of tasks. Categories and Subject Descriptors F.2.2 [Theory of Computation]: Non-numerical Algorithm and Problem; J.7 [Computer Applications]: Computers in Other Systems General Terms Algorithms Keywords task scheduling, release time and deadline, feasible schedule, successor-tree-consistency. 1. INTRODUCTION Deterministic task scheduling with timing constraints has been extensively studied [1, 2, 3, 6, 7, 8, 9]. Even on one processor, it is NP-complete to determine if there is a feasible Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. SPAA 02, August 10-13, 2002, Winnipeg, Manitoba, Canada. Copyright 2002 ACM /02/ $5.00. schedule for a set of independent tasks with different execution times, individual integer release times and deadlines [7]. A few special cases have been shown to be polynomially solvable [5]. One of them is scheduling UET tasks on two processors. Garey and Johnson [3] proposed a polynomial algorithm for scheduling UET tasks with individual integer release times and deadlines. Their algorithm computes the modified deadlines for all tasks and uses modified deadlines as priorities to compute a schedule. Computing modified deadlines, which is the dominating factor in the time complexity, requires O(n 3 ) time, where n is the number of tasks. Their algorithm can find a feasible schedule whenever one exists. In addition, their algorithm can be used to find a schedule with minimum lateness on two identical processors. The resulting time complexity is O(n 3 log n). In the case where there is no precedence constraint and all release times and deadlines are real numbers, the problem of finding a feasible schedule for a set of non-pre-emptive tasks on multiple identical processors is polynomially solvable. Simon proposed an algorithm for this problem with the time complexity of O(n 3 log log n) [6]. Simon and Warmuth [7] improved Simon s algorithm to O(n 2 m), where m is the number of processors. However, the problem of determining if there is a feasible schedule for a set of non-pre-emptive UET tasks with arbitrary precedence constraints, individual real release times and deadlines on two identical processors is still open 1. This open problem was first proposed by Garey and Johnson [3]. In this paper, we propose the first polynomial algorithm for this problem. Our algorithm computes a feasible schedule whenever one exists. The time complexity of our algorithm is O(n 4 ). The key idea of our algorithm is computing the successor-tree-consistent deadlines for all tasks. The successor-tree-consistent deadline of a task T i is the upper bound on the latest completion time of T i in any feasible schedule for the relaxed problem instance where only the precedence between T i and each of its successor is considered. By using successor-tree-consistent deadlines as priorities, forward scheduling will compute a feasible schedule whenever one exists. 2. PROBLEM FORMULATION AND DEFI- NITION In the rest of this paper, we assume that all tasks are non- 1 This problem is equivalent to the problem with arbitrary precedence constraints, equal execution times, real release times and deadlines. 127

2 pre-emptive, i,e, once a task starts to run on a processor, it will keeprunning on the same processor until it terminates. Scheduling UET tasks with precedence constraints, individual real release times and deadlines on two identical processors is described as follows. Given a problem instance P :asetv ={T 1,T 2,,T n } of UET tasks with precedence constraints represented by a DAG (Directed Acyclic Graph) G=(V,E), where E={(T i,t j ):T i,t j V and T i immediately precedes T j },asetrt ={r i : r i is the pre-assigned release time of T i and a real number } of individual real release times, a set D={d i : d i is the pre-assigned deadline of T i and d i is a real number } of individual real deadlines, and two identical processors, compute a feasible schedule σ satisfying all constraints whenever one exists. Formally, a feasible schedule σ on two identical processors is a total function σ : V [0, ) which satisfies the following constraints: 1. Precedence constraint: (T i,t j ) E(σ(T i )+1 σ(t j )). 2. Release time and deadline constraint: T i V (r i σ(t i ) d i 1). 3. Resource constraint: t [0, )( {T i V : σ(t i ) t<σ(t i )+1} 2). In a DAG G=(V,E), if there is a path from T i to T j,then T j is the successor of T i and T i is the predecessor of T j ; especially, if (T i,t j ) E, thent j istheimmediatesuccessor of T i and T i istheimmediatepredecessoroft j.thesetof all successors of a task T i is denoted by Succ(T i ). If there is apathp ij from T i to T j, the path length of P ij, denoted by L(P ij ), is the number of edges in P ij.ift i is the predecessor of T j, the distance between T i and T j, denoted by l ij,is max{l(p ij ):P ij is a path from T i to T j }. Definition 1. Given a problem instance P,the edge-consistent release time of a task T i is defined as max{r i,max{r k + l ki : T k is the predecessor of T i }}. Theedge-consistent deadline of a task T i is defined as min{d i,min{d k l ik : T k is the successor of T i }}. The edge-consistent release times and the edge-consistent deadlines of all tasks can be computed in O(e) timebyusing breadth-first search, where e is the number of edges in the precedence graph. Definition 2. Given a DAG G=(V,E) andataskt i,the successor tree of T i is a directed tree ST(T i ) = (V i,e i ), where V i = {T i } {T j : T j Succ(T i )}, ande i = {(T i,t j ): T j Succ(T i )}. The key idea of our algorithm is to compute the successortree-consistent deadline for each task. Given a problem instance P, the successor-tree-consistent deadline of each task T i, denoted by d i, is the upper bound on the latest completion time of T i in any feasible schedule for the relaxed problem instance P (i) which is recursively defined as follows. P (i) consists of the same set of tasks as in P with the following constraints. 1. Precedence constraints. The precedence constraints are represented by the successor tree ST(T i )oft i. 2. Release time constraints. The release time of each task is its edge-consistent release time. 3. Deadline constraints. For each task T j, if it is not the successor of T i and its edge-consistent release time is not greater than that of T i, its deadline is its edgeconsistent deadline; otherwise, its deadline is its successor-tree-consistent deadline. 4. Resource constraints. Only two identical processors areavailableatanytime. Formally, d i = min{d i, max{σ(t i )+1 : σ is a feasible schedule for the relaxed problem instance P (i)}}. 3. FORWARD SCHEDULING AND BACK- WARD SCHEDULING In order to compute the successor-tree-consistent deadlines, our algorithm uses both forward scheduling and backward scheduling. Inthissection,wedescribetheforward scheduling and the backward scheduling for a set of independent tasks. The modified forward scheduling for a set of tasks with precedence constraints will be described in the next section. Given a problem instance P :asets = {T 1,T 2,,T p } of p independent UET tasks with individual real release times and deadlines, the objective of the forward scheduling is to find a feasible schedule with the minimum completion time on two identical processors whenever one exists. A schedule computed by forward scheduling is called a forward schedule. The forward scheduling algorithm was first proposed by Simon [6]. Simon s forward scheduling algorithm works as follows. 1. EDF (Earliest Deadline First) strategy is used when no task misses its deadline. By Earliest Deadline First strategy, whenever a processor is available, among all unscheduled ready tasks, the task with the earliest deadline is chosen and scheduled as early as possible in the partial forward schedule σ f. 2. If a task T i misses its deadline in the partial forward schedule σ f, two cases are distinguished. If no task in the partial forward schedule has a larger deadline than T i s, then no feasible schedule exists. Otherwise, backtracking is performed as follows. Let T j1,t j2,,t jm be all tasks in the partial schedule satisfying 1) the deadline of each T jk deadline is larger than T i s, and 2) for any two tasks T js and T jt (t>s), either σ f (T jt ) > σ f (T jt ) holds or σ f (T jt )=σ f (T jt )andd jt d js hold. For s = m, m 1,, 1, do the following. (a) Remove T js and each T k with σ f (T k ) >σ(t js ) from σ f. (b) Reschedule all tasks in {T k : T k was just removed from σ f } {T jm,,t js } {T i } by using EDF. (c) If T i does not miss its deadline in the new partial forward schedule, then stopbacktracking. When the backtracking is finished. Two cases are possible. If T i does not miss its deadline in the new partial forward schedule, then go to step1 and continue to schedule the remaining tasks. Otherwise, there is no feasible schedule and the forward scheduling algorithm terminates. 128

3 Processor 1 Processor 2 T T T T T 3 T 4 T Figure 1: A forward schedule σ f for example 1. Processor 1 Processor 2 T T T T T 1 T 4 T Figure 2: A backward schedule σ b for example 1. A faster forward scheduling algorithm was proposed by Simon and Warmuth [7]. In the case of two identical processors, the time complexity of their algorithm is O(n 2 ), where n is the number of tasks. Given a problem instance P defined before, the objective of the backward scheduling is to find a feasible schedule on two identical processors such that the minimum start time is maximized whenever one exists. A schedule computed by backward scheduling is called a backward schedule. A backward schedule σ b for the problem instance P can be computed by using forward scheduling algorithm as follows. 1. Let r i and d i (i =1, 2,,p) be the release time and thedeadlineoft i respectively in the problem instance P and d max =max{d i }. Construct a new problem instance P b:asetr = {v 1,v 2,,v p } of p independent UET tasks with a set RT = {d max d i : d max d i is the release time of v i } of individual real release times and a set D = {d max r i : d max r i is the deadline of v i }, and two identical processors. 2. Compute a forward schedule σ f for P b. 3. For each task T i (i = 1, 2,,p), σ b (T i ) = d max σ f (v i ) 1. Example 1 Given a problem instance P : a set V = {T 1,T 2,,T 7 } of 7 independent UET tasks with the following real release times and deadlines: r 1 = r 2 =0,r 3 =0.3, r 4 =1.8, r 5 =2.3, r 6 =2.5, r 7 =3.1, d 1 =2.5, d 2 =3.1, d 3 =1.8, d 4 =3.7, d 5 =4,d 6 =3.8, d 7 =4.5, and two identical processors, a forward schedule σ f for P is shown in Figure 1. A backward schedule σ b for P is shown in Figure SCHEDULING ALGORITHM The input of our algorithm is a problem instance P :aset V ={T 1,T 2,,T n } of UET tasks, a set of precedence constraints in the form of a DAG G=(V,E), a set RT ={r 1,r 2,, r n } of individual real release times, a set D={d 1,d 2,, d n } of individual real deadlines, and two identical processors. The output of our algorithm is a feasible schedule σ for P whenever one exists, or No feasible schedule exists. if no feasible schedule exists. Our algorithm consists of three main steps. The first step performs preprocessing. The preprocessing includes computing the edge-consistent release times and the edgeconsistent deadlines for all tasks and sorting an array L which is used to choose a task to compute its successor-treeconsistent deadline. The second stepcomputes the successortree-consistent deadlines for all non-sink tasks. According to the definition of the successor-tree-consistent deadline, the following two rules are used to choose a task T i to compute its successor-tree-consistent deadline: 1) The successor-treeconsistent deadlines of all successors of T i have been computed, and 2) among all tasks whose successors successortree-consistent deadlines have been computed, T i has the largest edge-consistent release time. Ties are broken in arbitrary order. To follow these two rules, we sort all tasks in L in non-ascending order of their edge-consistent release times in the first step. The last step constructs a schedule for P by using the modified forward scheduling algorithm. The modified forward scheduling algorithm works essentially the same way as Simon s forward scheduling algorithm where no precedence constraints exist. The modified forward scheduling algorithm computes a forward schedule for the problem instance P wherethereleasetimeofeach task is its edge-consistent release time and its deadline is its successor-tree-consistent deadline. The only difference between the modified forward scheduling and the forward scheduling is that the modified forward scheduling algorithm considers the precedence constraints when computing a forward schedule. Specifically, in the modified forward scheduling algorithm, a task is ready only if all its predecessors have been scheduled and its release time has passed. The framework of our algorithm is shown in pseudo code as follows. procedure T wo P rocessor Scheduling(P ) Input: A problem instance P defined in Section 2. Output: A feasible schedule σ whenever one exists. variable L: array of all tasks in V ; /* Preprocessing */ for each task in V do begin compute its edge-consistent release time and deadline; change its release time to its edge-consistent release time; change its deadline to its edge-consistent deadline; end sort L in non-ascending order of their edge-consistent release times; /* Compute the successor-tree-consistent deadline of each non-sink task */ for i =0, 1,,n 1 do if L[i] is not an sink task begin compute the successor-tree-consistent deadline for L[i]; 129

4 set the deadline of L[i] to its successor-tree-consistent deadline; end /* Compute a feasible schedule */ compute a forward schedule σ by using the modified forward scheduling algorithm; if all tasks meet their successor-tree-consistent deadlines in σ then return(σ); /* σ is a feasible schedule; */ else return( No feasible schedule exists. ); Computing the successor-tree-consistent deadline for a nonsink task L[i] is the core of our scheduling algorithm. For a sink task, its successor-tree-consistent deadline is its edgeconsistent deadline. Next we describe how to compute the successor-tree-consistent deadline for a non-sink task T i.recall that the successor-tree-consistent deadline d i of task T i is the upper bound on its latest completion time in any feasible schedule for the relaxed problem instance P (i) defined in Section 2. Note that all successors of T i must be scheduled after T i,and there may exist a minimum set U min (i) ofthetasks which are not the successors of T i and must be scheduled after T i in any feasible schedule for P (i) due to their tight release times and deadlines. Therefore, to compute the successor-tree-consistent deadline of T i, we have to determine the minimum task set U min (i) ={T j : T j Succ(T i )andt j must be scheduled after T i in any feasible schedule for P }. In the rest of this paper, unless their meanings are explicitly stated, r i will denote the edge-consistent release time of T i and d i will denote the current deadline of T i, i.e. its successor-tree-consistent deadline if it has been computed, or its edge-consistent deadline otherwise. The algorithm for computing the successor-tree-consistent deadline for T i is shown as follows. 1. Preprocessing. (a) Let U 0 = V {T i } Succ(T i ). Compute a forward schedule σ f 0 for U 0 and a backward schedule σ0 b for Succ(T i ), where the release time of each task is its edge-consistent release time and the deadline of each task is its current deadline. (b) t min = min{σ0(t b k ) : T k Succ(T i )} and t = min{d i,t min }. (c) Let L 1 be an array containing all tasks in U 0. Sort L 1 such that for any two tasks L 1 [j] and L 1 [j+1], either 1) σ f 0 (L 1[j]) <σ f 0 (L 1[j+1]), or 2) σ f 0 (L 1[j]) = σ f 0 (L 1[j+1]) and the current deadline of L 1 [j] is not larger than that of L 1 [j +1]. (d) Let m and p be two non-negative integers satisfying the following constraints: 1) σ f 0 (L 1[m]) t 1, 2) for each task L 1 [j](j = m+1,, L 1 1) σ f 0 (L 1[j]) >t 1, 3) σ f 0 (L 1[p]) r i,and4)for each task L 1 [j](j =0, 1,,p 1)σ f 0 (L 1[j]) <r i. 2. Performing sequential search to compute the successortree-consistent deadline for T i.foreachtaskl 1 [j](j = m, m 1,,p) do the following. (a) Compute a backward schedule σj b for Succ(T i ) {L 1 [k] :k = j,j +1,, L 1 1}. Let t min = min{σj(t b k ):T k Succ(T i ) {L 1 [k] :k = j,j + 1,, L 1 1}}. (b) If σ f 0 (L 1[j 1]) + 1 >t min and j = p, thenno feasible schedule exists for the relaxed problem instance P (i) and our algorithm terminates. (c) If σ f 0 (L 1[j 1]) + 1 t min, do the following. i. Let T s and T t be two tasks in Succ(T i ) {L 1 [k] :k = j,j +1,, L 1 1} satisfying that for each task T k Succ(T i ) {L 1 [k] : k = j,j +1,, L 1 1} {T s,t t } σj(t b k ) σj(t b s )andσj(t b k ) σj(t b t ). ii. If σj(t b s )=σj(t b t ), let t 1 = σj(t b t )(t 1 might be the successor-tree-consistent deadline of T i ); otherwise, check if T i can be scheduled at time t 2 =max{σj(t b s ),σj(t b t )} 1asfollows. Compute a backward schedule σ b on two identical processors for the following problem instance P 0 (i): a set Succ(T i ) {L 1 [k] : k = j,j +1,, L 1 1} of UET tasks with the following constraints: 1) The deadline of each task is its current deadline, 2) for each task T k Succ(T i ), its release time is max{r k,t 2 +1}, and 3) for each task T k {L 1 [k] :k = j,j +1,, L 1 1}, itsrelease time is its edge-consistent release time. If σ b is a feasible schedule, let t 1 = t 2 +1; otherwise, let t 1 =min{σj(t b s ),σj(t b t )}. iii. Let t 0 =min{σ f 0 (L 1[j 1]),σ f 0 (L 1[j 2])} + 1. If t 1 t 0 1, then the successor-treeconsistent deadline of task T i is t 1 and the procedure for computing the successor-treeconsistent deadline of T i terminates. If the successor-tree-consistent deadline of T i is not available upon the completion of the above loop, then no feasible schedule exists for the relaxed problem instance P (i). Note that P (i) is the relaxed problem instance of P.Therefore, if there is no feasible schedule for P (i), then there is no feasible schedule for P. 5. PROOF AND ANALYSIS From our scheduling algorithm for computing the successortree-consistent deadlines, we can prove the following lemma. Lemma 5.1. Given a problem instance P, a schedule σ for P has no late task with respect to successor-tree-consistent deadlines iff it has no late task with respect to pre-assigned deadlines. Before proving our main theorem, we introduce two types of idle intervals used in the proof. Given a schedule σ for aprobleminstancep and a processor M, a time interval π =[t 1,t 2 ) is called an idle interval w.r.t. M and σ if M is idle during the time interval π in the schedule σ. Anidle interval π is called an artificial idle interval if at least one task is ready at a time point in π. Otherwise, it is called a true idle interval. Artificial idle intervals are caused by the forward scheduling where all ready tasks are delayed due to an urgent task. 130

5 Theorem 1. Given a problem instance P,ouralgorithm computes a feasible schedule iff one exists. Proof Assume that there is a feasible schedule for P and a schedule σ computed by our algorithm has at least one late task. Let T k be the first late task and t be the earliest time which satisfies the following two constraints. No processor has a true idle interval in the time interval [t, σ(t k )). The successor-tree-consistent deadlines of all tasks partially or fully scheduled in [t, σ(t k ))arelessthanor equal to d k. Without loss of generality, we assume that T k is scheduled on processor 1 in σ. Let S = {T k } {T j : t σ(t j ) σ(t k ) 1}. Consider all possible cases. 1. t = σ(t k ). There are two cases. (a) There is a true idle interval [t 1,σ(T k )) or the task T i scheduled in time interval [σ(t k ) 1,σ(T k )) on processor 1 has a larger successor-tree-consistent deadline than T k s. This case means that T k s release time is σ(t k ). Therefore, T k must miss its deadline in any schedule, which contradicts the assumption that there is a feasible schedule for P. (b) There is a task T i scheduled in time interval [σ(t k ) 1,σ(T k )) on processor 1 such that d i d k. By the definition of t, T k must be the successor of T i. By our algorithm for computing the successor-tree-consistent deadlines, T i must miss its successor-tree-consistent deadline, which contradicts the assumption that T k is the first late task. 2. t = 0. If we ignore all tasks in V S, wherev is the set of all tasks in P,thenσ is a forward schedule for the problem instance P 1 : A set S of independent UET tasks with the following constraints: 1) the release time of each task is its edge-consistent release time, 2) the deadline of each task is its successor-treeconsistent deadline, and 3) two identical processors. By the property of the forward scheduling, there must be a late task in any schedule for P 1. Therefore, there must be a late task in any schedule for P, which contradicts the assumption. 3. There is a true idle interval [t 1,t) or a task scheduled in [t 1,t) has a larger successor-tree-consistent deadline than T k s on processor 1. Consider the following cases. (a) There is a task T i in S scheduled on processor 2 with σ(t i ) <tand σ(t i )+1 >t. In this case, for each task T j S {T i },eithert j is a successor of T i or T j cannot be released before t. By our algorithm for computing the successortree-consistent deadlines, T i must also miss its successor-tree-consistent deadline, which contradicts the assumption that T k is the first late task. (b) There is an artificial idle interval [t 0,t)onprocessor 2. The following two cases are possible. i. Either there is a true idle interval [t 2,t 0 )or there is a task T i scheduled in [t 0 1,t 0 ) on processor 2 such that the successor-treeconsistent deadline of T i is greater than that of T k. Similar to case 2, one of the tasks in S must miss its deadline in any schedule, which contradicts the assumption. ii. There is a task T i scheduled in [t 0 1,t 0 ) on processor 2 such that the successor-treeconsistent deadline of T i is not greater than that of T k. In this case, for each task T j S, either T j is the successor of T i or T j cannot be released before t. Similar to case 3(a), T i must also miss its successor-tree-consistent deadline, which contradicts the assumption. (c) There is a true idle interval [t 3,t) on processor 2. In this case, no task in S can be released before t. Similar to case 2, one of the tasks in S must miss its deadline in any schedule for P, which contradicts the assumption. (d) A task T i is scheduled in [t 1,t) on processor 2. Two cases are possible. i. The successor-tree-consistent deadline of T i is not greater than that of T k.inthiscase,for each task T j in S, eithert j is the successor of T i or r j t holds. Similar to case 3(a), T i must also miss its deadline in σ, which contradicts the assumption that T k is the first late task. ii. The successor-tree-consistent deadline of T i is greater than that of T k. Thisimpliesthat no task in S can be released before t. Similar to case 2, one of the task in S must miss its deadline in any schedule for P. 4. There is an artificial idle interval [t 1,t) on processor 1. The following cases are possible. (a) There is a true idle interval [t 4,t 1 )orthetask scheduled in [t 1 1,t 1 ) on processor 1 has a larger successor-tree-consistent deadline than T k s. Similar to case 2, one of the tasks in S must miss its successor-tree-consistent deadline, which contradict that assumption that there is a feasible schedule for P. (b) There is a task scheduled in [t 1 1,t 1 ) such that the successor-tree-consistent deadline of T i is not greater than that of T k. Similar to case 3(a), T i must miss its successor-tree-consistent deadline, which contradicts that assumption that T k is the first late task. 5. There is a task T i scheduled in [t 1,t) on processor 1 such that the successor-tree-consistent deadline of T i is not greater than that of T k. Similar to case 3(a), T i must miss its successor-tree-consistent deadline, which contradicts that assumption that T k is the first late task. Therefore, σ has no late task and the theorem holds. In our algorithm, the dominating factor of the time complexity is computing successor-tree-consistent deadlines for 131

6 all tasks. When our algorithm computes the successor-treeconsistent deadline for each non-sink task, Simon and Warmuth s forward scheduling algorithm is called at most O(n) times. Since Simon and Warmuth s forward scheduling algorithm runs in O(n 2 )timeontwoidenticalprocessors,computing the successor-tree-consistent deadline for each nonsink task takes O(n 3 ) time. Therefore, the time complexity of our algorithm is O(n 4 ). 6. CONCLUSION In this paper, we have proposed the first polynomial algorithm for scheduling UET tasks with arbitrary precedence constraints, individual real release times and deadlines on two identical processors. This problem is solved by computing the successor-tree-consistent deadlines for all tasks. The successor-tree-consistent deadlines are tighter deadlines which are consistent with respect to the successor tree of each task. The time complexity of our algorithm is O(n 4 ). Our algorithm can be made faster by using binary search similar to that in [9]. The details will be described in the full paper. The successor-tree-consistency is a powerful technique for handling precedence constraints. Many polynomially solvable scheduling problems with precedence constraints can be solved by using successor-tree-consistency [2, 3]. We conjecture that it could be used to get a good approximation algorithm for the general scheduling problem where the execution times are different. In the category of minimum makespan scheduling problems, the complexity status of scheduling UET tasks with arbitrary precedence constraints on n (n 3andn is fixed) processors so that the maximum completion time is minimized is still unknown. The latest advance on this problem was made by Garey, Johnson, Tarjan and Yannakakis [4]. They proved that in the case where the precedence constraints are in the form of opposing forests, if the number of processors is fixed, then the problem is polynomially solvable; otherwise, it is NP-complete. We have examples which show that successor-consistency cannot solve three processor scheduling problem. However, it is not known if there is any stronger consistency which can helpsolve three processor scheduling problem. [6] B. Simon. Multiprocessor scheduling of unit-time jobs with arbitrary release times and deadlines. SIAM J. Comput., 12(2): , [7] B. Simon and M. Warmuth. A fast algorithm for multiprocessor scheduling of unit length jobs. SIAM J. Comput., 18(4): , [8] H. Wu, J. Jaffar, and R. Yap. A fast algorithm for scheduling instructions with deadline constraints on risc machines. In The Proceedings of 2000 International Conference on Parallel Architecture and Compilation Technique, pages Philadelphia, USA, Oct [9] H. Wu, J. Jaffar, and R. Yap. Instruction scheduling with timing constraints on a single risc processor with 0/1 latencies. In The proceedings of the Sixth International Conference on The Principles and Practice of Constraint Programming, pages Lecture Notes in Computer Science, Volume Springer Verlag, Sept REFERENCES [1] M.Garey,B.S.D.S.Johnson,andR.Tarjan. Scheduling unit-time jobs with arbitrary release times and deadlines. SIAM J. Comput., 10(2): , [2] M. Garey and D. Johnson. Scheduling tasks with nonuniform deadlines on two processors. J. ACM, 23(3): , [3] M. Garey and D. Johnson. Two processor scheduling with start-times and deadlines. SIAM J. Comput., 6(3): , [4] M.Garey,D.Johnson,R.Tarjan,andM.Yannakakis. Scheduling opposing forests. SIAM J. Alg. Disc. Meth., 4(1):72 93, March [5] E.L.Lawler,J.Lenstra,A.R.Kan,andD.Schmoy. Sequencing and scheduling: Algorithms and complexity. Handbooks in Operations research and management science, volume 4:Logistic of production and inventory, edited by S.C. Graves, A.H.G. Rinnooy Kan and P. Zipkin, North-Holland, pages ,

Embedded Systems 15. REVIEW: Aperiodic scheduling. C i J i 0 a i s i f i d i

Embedded Systems 15. REVIEW: Aperiodic scheduling. C i J i 0 a i s i f i d i Embedded Systems 15-1 - REVIEW: Aperiodic scheduling C i J i 0 a i s i f i d i Given: A set of non-periodic tasks {J 1,, J n } with arrival times a i, deadlines d i, computation times C i precedence constraints

More information

Algorithm Design. Scheduling Algorithms. Part 2. Parallel machines. Open-shop Scheduling. Job-shop Scheduling.

Algorithm Design. Scheduling Algorithms. Part 2. Parallel machines. Open-shop Scheduling. Job-shop Scheduling. Algorithm Design Scheduling Algorithms Part 2 Parallel machines. Open-shop Scheduling. Job-shop Scheduling. 1 Parallel Machines n jobs need to be scheduled on m machines, M 1,M 2,,M m. Each machine can

More information

Embedded Systems 14. Overview of embedded systems design

Embedded Systems 14. Overview of embedded systems design Embedded Systems 14-1 - Overview of embedded systems design - 2-1 Point of departure: Scheduling general IT systems In general IT systems, not much is known about the computational processes a priori The

More information

EECS 571 Principles of Real-Time Embedded Systems. Lecture Note #7: More on Uniprocessor Scheduling

EECS 571 Principles of Real-Time Embedded Systems. Lecture Note #7: More on Uniprocessor Scheduling EECS 571 Principles of Real-Time Embedded Systems Lecture Note #7: More on Uniprocessor Scheduling Kang G. Shin EECS Department University of Michigan Precedence and Exclusion Constraints Thus far, we

More information

Partition is reducible to P2 C max. c. P2 Pj = 1, prec Cmax is solvable in polynomial time. P Pj = 1, prec Cmax is NP-hard

Partition is reducible to P2 C max. c. P2 Pj = 1, prec Cmax is solvable in polynomial time. P Pj = 1, prec Cmax is NP-hard I. Minimizing Cmax (Nonpreemptive) a. P2 C max is NP-hard. Partition is reducible to P2 C max b. P Pj = 1, intree Cmax P Pj = 1, outtree Cmax are both solvable in polynomial time. c. P2 Pj = 1, prec Cmax

More information

Polynomially solvable and NP-hard special cases for scheduling with heads and tails

Polynomially solvable and NP-hard special cases for scheduling with heads and tails Polynomially solvable and NP-hard special cases for scheduling with heads and tails Elisa Chinos, Nodari Vakhania Centro de Investigación en Ciencias, UAEMor, Mexico Abstract We consider a basic single-machine

More information

Task Models and Scheduling

Task Models and Scheduling Task Models and Scheduling Jan Reineke Saarland University June 27 th, 2013 With thanks to Jian-Jia Chen at KIT! Jan Reineke Task Models and Scheduling June 27 th, 2013 1 / 36 Task Models and Scheduling

More information

On Machine Dependency in Shop Scheduling

On Machine Dependency in Shop Scheduling On Machine Dependency in Shop Scheduling Evgeny Shchepin Nodari Vakhania Abstract One of the main restrictions in scheduling problems are the machine (resource) restrictions: each machine can perform at

More information

APTAS for Bin Packing

APTAS for Bin Packing APTAS for Bin Packing Bin Packing has an asymptotic PTAS (APTAS) [de la Vega and Leuker, 1980] For every fixed ε > 0 algorithm outputs a solution of size (1+ε)OPT + 1 in time polynomial in n APTAS for

More information

Optimal on-line algorithms for single-machine scheduling

Optimal on-line algorithms for single-machine scheduling Optimal on-line algorithms for single-machine scheduling J.A. Hoogeveen A.P.A. Vestjens Department of Mathematics and Computing Science, Eindhoven University of Technology, P.O.Box 513, 5600 MB, Eindhoven,

More information

Embedded Systems - FS 2018

Embedded Systems - FS 2018 Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Embedded Systems - FS 2018 Sample solution to Exercise 3 Discussion Date: 11.4.2018 Aperiodic Scheduling Task 1: Earliest Deadline

More information

ALG 5.4. Lexicographical Search: Applied to Scheduling Theory. Professor John Reif

ALG 5.4. Lexicographical Search: Applied to Scheduling Theory. Professor John Reif Algorithms Professor John Reif ALG 54 input assume problem Scheduling Problems Set of n tasks in precidence relation on tasks Also, given m processors Unit time cost to process task using single processor

More information

Average-Case Performance Analysis of Online Non-clairvoyant Scheduling of Parallel Tasks with Precedence Constraints

Average-Case Performance Analysis of Online Non-clairvoyant Scheduling of Parallel Tasks with Precedence Constraints Average-Case Performance Analysis of Online Non-clairvoyant Scheduling of Parallel Tasks with Precedence Constraints Keqin Li Department of Computer Science State University of New York New Paltz, New

More information

Ideal preemptive schedules on two processors

Ideal preemptive schedules on two processors Acta Informatica 39, 597 612 (2003) Digital Object Identifier (DOI) 10.1007/s00236-003-0119-6 c Springer-Verlag 2003 Ideal preemptive schedules on two processors E.G. Coffman, Jr. 1, J. Sethuraman 2,,

More information

Scheduling Parallel Jobs with Linear Speedup

Scheduling Parallel Jobs with Linear Speedup Scheduling Parallel Jobs with Linear Speedup Alexander Grigoriev and Marc Uetz Maastricht University, Quantitative Economics, P.O.Box 616, 6200 MD Maastricht, The Netherlands. Email: {a.grigoriev, m.uetz}@ke.unimaas.nl

More information

Complexity analysis of job-shop scheduling with deteriorating jobs

Complexity analysis of job-shop scheduling with deteriorating jobs Discrete Applied Mathematics 117 (2002) 195 209 Complexity analysis of job-shop scheduling with deteriorating jobs Gur Mosheiov School of Business Administration and Department of Statistics, The Hebrew

More information

Complexity analysis of the discrete sequential search problem with group activities

Complexity analysis of the discrete sequential search problem with group activities Complexity analysis of the discrete sequential search problem with group activities Coolen K, Talla Nobibon F, Leus R. KBI_1313 Complexity analysis of the discrete sequential search problem with group

More information

Real-Time Systems. Event-Driven Scheduling

Real-Time Systems. Event-Driven Scheduling Real-Time Systems Event-Driven Scheduling Marcus Völp, Hermann Härtig WS 2013/14 Outline mostly following Jane Liu, Real-Time Systems Principles Scheduling EDF and LST as dynamic scheduling methods Fixed

More information

Real-Time Systems. Event-Driven Scheduling

Real-Time Systems. Event-Driven Scheduling Real-Time Systems Event-Driven Scheduling Hermann Härtig WS 2018/19 Outline mostly following Jane Liu, Real-Time Systems Principles Scheduling EDF and LST as dynamic scheduling methods Fixed Priority schedulers

More information

CIS 4930/6930: Principles of Cyber-Physical Systems

CIS 4930/6930: Principles of Cyber-Physical Systems CIS 4930/6930: Principles of Cyber-Physical Systems Chapter 11 Scheduling Hao Zheng Department of Computer Science and Engineering University of South Florida H. Zheng (CSE USF) CIS 4930/6930: Principles

More information

There are three priority driven approaches that we will look at

There are three priority driven approaches that we will look at Priority Driven Approaches There are three priority driven approaches that we will look at Earliest-Deadline-First (EDF) Least-Slack-Time-first (LST) Latest-Release-Time-first (LRT) 1 EDF Earliest deadline

More information

Lecture 13. Real-Time Scheduling. Daniel Kästner AbsInt GmbH 2013

Lecture 13. Real-Time Scheduling. Daniel Kästner AbsInt GmbH 2013 Lecture 3 Real-Time Scheduling Daniel Kästner AbsInt GmbH 203 Model-based Software Development 2 SCADE Suite Application Model in SCADE (data flow + SSM) System Model (tasks, interrupts, buses, ) SymTA/S

More information

Polynomial Time Algorithms for Minimum Energy Scheduling

Polynomial Time Algorithms for Minimum Energy Scheduling Polynomial Time Algorithms for Minimum Energy Scheduling Philippe Baptiste 1, Marek Chrobak 2, and Christoph Dürr 1 1 CNRS, LIX UMR 7161, Ecole Polytechnique 91128 Palaiseau, France. Supported by CNRS/NSF

More information

Improved Bounds on Relaxations of a Parallel Machine Scheduling Problem

Improved Bounds on Relaxations of a Parallel Machine Scheduling Problem Journal of Combinatorial Optimization 1, 413 426 (1998) c 1998 Kluwer Academic Publishers Manufactured in The Netherlands Improved Bounds on Relaxations of a Parallel Machine Scheduling Problem CYNTHIA

More information

Aperiodic Task Scheduling

Aperiodic Task Scheduling Aperiodic Task Scheduling Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 12 Germany Springer, 2010 2017 年 11 月 29 日 These slides use Microsoft clip arts. Microsoft copyright

More information

Networked Embedded Systems WS 2016/17

Networked Embedded Systems WS 2016/17 Networked Embedded Systems WS 2016/17 Lecture 2: Real-time Scheduling Marco Zimmerling Goal of Today s Lecture Introduction to scheduling of compute tasks on a single processor Tasks need to finish before

More information

arxiv:cs/ v1 [cs.ds] 18 Oct 2004

arxiv:cs/ v1 [cs.ds] 18 Oct 2004 A Note on Scheduling Equal-Length Jobs to Maximize Throughput arxiv:cs/0410046v1 [cs.ds] 18 Oct 2004 Marek Chrobak Christoph Dürr Wojciech Jawor Lukasz Kowalik Maciej Kurowski Abstract We study the problem

More information

University of Twente. Faculty of Mathematical Sciences. Scheduling split-jobs on parallel machines. University for Technical and Social Sciences

University of Twente. Faculty of Mathematical Sciences. Scheduling split-jobs on parallel machines. University for Technical and Social Sciences Faculty of Mathematical Sciences University of Twente University for Technical and Social Sciences P.O. Box 217 7500 AE Enschede The Netherlands Phone: +31-53-4893400 Fax: +31-53-4893114 Email: memo@math.utwente.nl

More information

Contention-Free Executions for Real-Time Multiprocessor Scheduling

Contention-Free Executions for Real-Time Multiprocessor Scheduling Contention-Free Executions for Real-Time Multiprocessor Scheduling JINKYU LEE, University of Michigan ARVIND EASWARAN, Nanyang Technological University INSIK SHIN, KAIST A time slot is defined as contention-free

More information

Scheduling Lecture 1: Scheduling on One Machine

Scheduling Lecture 1: Scheduling on One Machine Scheduling Lecture 1: Scheduling on One Machine Loris Marchal October 16, 2012 1 Generalities 1.1 Definition of scheduling allocation of limited resources to activities over time activities: tasks in computer

More information

Lecture 2: Scheduling on Parallel Machines

Lecture 2: Scheduling on Parallel Machines Lecture 2: Scheduling on Parallel Machines Loris Marchal October 17, 2012 Parallel environment alpha in Graham s notation): P parallel identical Q uniform machines: each machine has a given speed speed

More information

Real-time Scheduling of Periodic Tasks (2) Advanced Operating Systems Lecture 3

Real-time Scheduling of Periodic Tasks (2) Advanced Operating Systems Lecture 3 Real-time Scheduling of Periodic Tasks (2) Advanced Operating Systems Lecture 3 Lecture Outline The rate monotonic algorithm (cont d) Maximum utilisation test The deadline monotonic algorithm The earliest

More information

Deterministic Scheduling. Dr inż. Krzysztof Giaro Gdańsk University of Technology

Deterministic Scheduling. Dr inż. Krzysztof Giaro Gdańsk University of Technology Deterministic Scheduling Dr inż. Krzysztof Giaro Gdańsk University of Technology Lecture Plan Introduction to deterministic scheduling Critical path metod Some discrete optimization problems Scheduling

More information

CS521 CSE IITG 11/23/2012

CS521 CSE IITG 11/23/2012 Today Scheduling: lassification Ref: Scheduling lgorithm Peter rukerook Multiprocessor Scheduling : List PTS Ref job scheduling, by uwe schweigelshohn Tomorrow istributed Scheduling ilk Programming and

More information

Approximation Algorithms for scheduling

Approximation Algorithms for scheduling Approximation Algorithms for scheduling Ahmed Abu Safia I.D.:119936343, McGill University, 2004 (COMP 760) Approximation Algorithms for scheduling Leslie A. Hall The first Chapter of the book entitled

More information

End-to-End Scheduling to Meet Deadlines in Distributed Systems

End-to-End Scheduling to Meet Deadlines in Distributed Systems Appeared in: Proceedings of the 12th International Conference on Distributed Computing Systems, Yokohama, Japan, June 1992, pages 452--459. End-to-End Scheduling to Meet Deadlines in Distributed Systems

More information

Embedded Systems Development

Embedded Systems Development Embedded Systems Development Lecture 3 Real-Time Scheduling Dr. Daniel Kästner AbsInt Angewandte Informatik GmbH kaestner@absint.com Model-based Software Development Generator Lustre programs Esterel programs

More information

Copyright 1975, by the author(s). All rights reserved.

Copyright 1975, by the author(s). All rights reserved. Copyright 1975, by the author(s). All rights reserved. Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are

More information

1 Ordinary Load Balancing

1 Ordinary Load Balancing Comp 260: Advanced Algorithms Prof. Lenore Cowen Tufts University, Spring 208 Scribe: Emily Davis Lecture 8: Scheduling Ordinary Load Balancing Suppose we have a set of jobs each with their own finite

More information

Recoverable Robustness in Scheduling Problems

Recoverable Robustness in Scheduling Problems Master Thesis Computing Science Recoverable Robustness in Scheduling Problems Author: J.M.J. Stoef (3470997) J.M.J.Stoef@uu.nl Supervisors: dr. J.A. Hoogeveen J.A.Hoogeveen@uu.nl dr. ir. J.M. van den Akker

More information

Single machine scheduling with forbidden start times

Single machine scheduling with forbidden start times 4OR manuscript No. (will be inserted by the editor) Single machine scheduling with forbidden start times Jean-Charles Billaut 1 and Francis Sourd 2 1 Laboratoire d Informatique Université François-Rabelais

More information

Real-Time Scheduling

Real-Time Scheduling 1 Real-Time Scheduling Formal Model [Some parts of this lecture are based on a real-time systems course of Colin Perkins http://csperkins.org/teaching/rtes/index.html] Real-Time Scheduling Formal Model

More information

Machine Minimization for Scheduling Jobs with Interval Constraints

Machine Minimization for Scheduling Jobs with Interval Constraints Machine Minimization for Scheduling Jobs with Interval Constraints Julia Chuzhoy Sudipto Guha Sanjeev Khanna Joseph (Seffi) Naor Abstract The problem of scheduling jobs with interval constraints is a well-studied

More information

1 Basic Definitions. 2 Proof By Contradiction. 3 Exchange Argument

1 Basic Definitions. 2 Proof By Contradiction. 3 Exchange Argument 1 Basic Definitions A Problem is a relation from input to acceptable output. For example, INPUT: A list of integers x 1,..., x n OUTPUT: One of the three smallest numbers in the list An algorithm A solves

More information

Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions

Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions Mitra Nasri Chair of Real-time Systems, Technische Universität Kaiserslautern, Germany nasri@eit.uni-kl.de

More information

3. Scheduling issues. Common approaches 3. Common approaches 1. Preemption vs. non preemption. Common approaches 2. Further definitions

3. Scheduling issues. Common approaches 3. Common approaches 1. Preemption vs. non preemption. Common approaches 2. Further definitions Common approaches 3 3. Scheduling issues Priority-driven (event-driven) scheduling This class of algorithms is greedy They never leave available processing resources unutilized An available resource may

More information

Real-time operating systems course. 6 Definitions Non real-time scheduling algorithms Real-time scheduling algorithm

Real-time operating systems course. 6 Definitions Non real-time scheduling algorithms Real-time scheduling algorithm Real-time operating systems course 6 Definitions Non real-time scheduling algorithms Real-time scheduling algorithm Definitions Scheduling Scheduling is the activity of selecting which process/thread should

More information

Lecture 4 Scheduling 1

Lecture 4 Scheduling 1 Lecture 4 Scheduling 1 Single machine models: Number of Tardy Jobs -1- Problem 1 U j : Structure of an optimal schedule: set S 1 of jobs meeting their due dates set S 2 of jobs being late jobs of S 1 are

More information

Real-Time Systems. Lecture 4. Scheduling basics. Task scheduling - basic taxonomy Basic scheduling techniques Static cyclic scheduling

Real-Time Systems. Lecture 4. Scheduling basics. Task scheduling - basic taxonomy Basic scheduling techniques Static cyclic scheduling Real-Time Systems Lecture 4 Scheduling basics Task scheduling - basic taxonomy Basic scheduling techniques Static cyclic scheduling 1 Last lecture (3) Real-time kernels The task states States and transition

More information

A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling

A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling Department of Mathematics, Linköping University Jessika Boberg LiTH-MAT-EX 2017/18 SE Credits: Level:

More information

Non-preemptive Fixed Priority Scheduling of Hard Real-Time Periodic Tasks

Non-preemptive Fixed Priority Scheduling of Hard Real-Time Periodic Tasks Non-preemptive Fixed Priority Scheduling of Hard Real-Time Periodic Tasks Moonju Park Ubiquitous Computing Lab., IBM Korea, Seoul, Korea mjupark@kr.ibm.com Abstract. This paper addresses the problem of

More information

Exam Spring Embedded Systems. Prof. L. Thiele

Exam Spring Embedded Systems. Prof. L. Thiele Exam Spring 20 Embedded Systems Prof. L. Thiele NOTE: The given solution is only a proposal. For correctness, completeness, or understandability no responsibility is taken. Sommer 20 Eingebettete Systeme

More information

Flow Shop and Job Shop Models

Flow Shop and Job Shop Models Outline DM87 SCHEDULING, TIMETABLING AND ROUTING Lecture 11 Flow Shop and Job Shop Models 1. Flow Shop 2. Job Shop Marco Chiarandini DM87 Scheduling, Timetabling and Routing 2 Outline Resume Permutation

More information

Using column generation to solve parallel machine scheduling problems with minmax objective functions

Using column generation to solve parallel machine scheduling problems with minmax objective functions J Sched (2012) 15:801 810 DOI 10.1007/s10951-010-0191-z Using column generation to solve parallel machine scheduling problems with minmax objective functions J.M. van den Akker J.A. Hoogeveen J.W. van

More information

5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1

5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1 5 Integer Linear Programming (ILP) E. Amaldi Foundations of Operations Research Politecnico di Milano 1 Definition: An Integer Linear Programming problem is an optimization problem of the form (ILP) min

More information

Scheduling Periodic Real-Time Tasks on Uniprocessor Systems. LS 12, TU Dortmund

Scheduling Periodic Real-Time Tasks on Uniprocessor Systems. LS 12, TU Dortmund Scheduling Periodic Real-Time Tasks on Uniprocessor Systems Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 08, Dec., 2015 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 38 Periodic Control System Pseudo-code

More information

Scheduling Lecture 1: Scheduling on One Machine

Scheduling Lecture 1: Scheduling on One Machine Scheduling Lecture 1: Scheduling on One Machine Loris Marchal 1 Generalities 1.1 Definition of scheduling allocation of limited resources to activities over time activities: tasks in computer environment,

More information

Preemptive Scheduling of Independent Jobs on Identical Parallel Machines Subject to Migration Delays

Preemptive Scheduling of Independent Jobs on Identical Parallel Machines Subject to Migration Delays Preemptive Scheduling of Independent Jobs on Identical Parallel Machines Subject to Migration Delays Aleksei V. Fishkin 1, Klaus Jansen 2, Sergey V. Sevastyanov 3,andRené Sitters 1 1 Max-Planck-Institute

More information

A Dynamic Programming algorithm for minimizing total cost of duplication in scheduling an outtree with communication delays and duplication

A Dynamic Programming algorithm for minimizing total cost of duplication in scheduling an outtree with communication delays and duplication A Dynamic Programming algorithm for minimizing total cost of duplication in scheduling an outtree with communication delays and duplication Claire Hanen Laboratory LIP6 4, place Jussieu F-75 252 Paris

More information

Machine scheduling with resource dependent processing times

Machine scheduling with resource dependent processing times Mathematical Programming manuscript No. (will be inserted by the editor) Alexander Grigoriev Maxim Sviridenko Marc Uetz Machine scheduling with resource dependent processing times Received: date / Revised

More information

Complexity of preemptive minsum scheduling on unrelated parallel machines Sitters, R.A.

Complexity of preemptive minsum scheduling on unrelated parallel machines Sitters, R.A. Complexity of preemptive minsum scheduling on unrelated parallel machines Sitters, R.A. Published: 01/01/2003 Document Version Publisher s PDF, also known as Version of Record (includes final page, issue

More information

Computers and Intractability. The Bandersnatch problem. The Bandersnatch problem. The Bandersnatch problem. A Guide to the Theory of NP-Completeness

Computers and Intractability. The Bandersnatch problem. The Bandersnatch problem. The Bandersnatch problem. A Guide to the Theory of NP-Completeness Computers and Intractability A Guide to the Theory of NP-Completeness The Bible of complexity theory Background: Find a good method for determining whether or not any given set of specifications for a

More information

The Concurrent Consideration of Uncertainty in WCETs and Processor Speeds in Mixed Criticality Systems

The Concurrent Consideration of Uncertainty in WCETs and Processor Speeds in Mixed Criticality Systems The Concurrent Consideration of Uncertainty in WCETs and Processor Speeds in Mixed Criticality Systems Zhishan Guo and Sanjoy Baruah Department of Computer Science University of North Carolina at Chapel

More information

Computers and Intractability

Computers and Intractability Computers and Intractability A Guide to the Theory of NP-Completeness The Bible of complexity theory M. R. Garey and D. S. Johnson W. H. Freeman and Company, 1979 The Bandersnatch problem Background: Find

More information

Minimizing Mean Flowtime and Makespan on Master-Slave Systems

Minimizing Mean Flowtime and Makespan on Master-Slave Systems Minimizing Mean Flowtime and Makespan on Master-Slave Systems Joseph Y-T. Leung,1 and Hairong Zhao 2 Department of Computer Science New Jersey Institute of Technology Newark, NJ 07102, USA Abstract The

More information

Metode şi Algoritmi de Planificare (MAP) Curs 2 Introducere în problematica planificării

Metode şi Algoritmi de Planificare (MAP) Curs 2 Introducere în problematica planificării Metode şi Algoritmi de Planificare (MAP) 2009-2010 Curs 2 Introducere în problematica planificării 20.10.2009 Metode si Algoritmi de Planificare Curs 2 1 Introduction to scheduling Scheduling problem definition

More information

Multiprocessor Scheduling I: Partitioned Scheduling. LS 12, TU Dortmund

Multiprocessor Scheduling I: Partitioned Scheduling. LS 12, TU Dortmund Multiprocessor Scheduling I: Partitioned Scheduling Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 22/23, June, 2015 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 47 Outline Introduction to Multiprocessor

More information

HYBRID FLOW-SHOP WITH ADJUSTMENT

HYBRID FLOW-SHOP WITH ADJUSTMENT K Y BERNETIKA VOLUM E 47 ( 2011), NUMBER 1, P AGES 50 59 HYBRID FLOW-SHOP WITH ADJUSTMENT Jan Pelikán The subject of this paper is a flow-shop based on a case study aimed at the optimisation of ordering

More information

Using column generation to solve parallel machine scheduling problems with minmax objective functions

Using column generation to solve parallel machine scheduling problems with minmax objective functions Using column generation to solve parallel machine scheduling problems with minmax objective functions J.M. van den Akker J.A. Hoogeveen Department of Information and Computing Sciences Utrecht University

More information

Integer Linear Programming (ILP)

Integer Linear Programming (ILP) Integer Linear Programming (ILP) Zdeněk Hanzálek, Přemysl Šůcha hanzalek@fel.cvut.cz CTU in Prague March 8, 2017 Z. Hanzálek (CTU) Integer Linear Programming (ILP) March 8, 2017 1 / 43 Table of contents

More information

Common-Deadline Lazy Bureaucrat Scheduling Problems

Common-Deadline Lazy Bureaucrat Scheduling Problems Common-Deadline Lazy Bureaucrat Scheduling Problems Behdad Esfahbod, Mohammad Ghodsi, and Ali Sharifi Computer Engineering Department Sharif University of Technology, Tehran, Iran, {behdad,ghodsi}@sharif.edu,

More information

Paper Presentation. Amo Guangmo Tong. University of Taxes at Dallas February 11, 2014

Paper Presentation. Amo Guangmo Tong. University of Taxes at Dallas February 11, 2014 Paper Presentation Amo Guangmo Tong University of Taxes at Dallas gxt140030@utdallas.edu February 11, 2014 Amo Guangmo Tong (UTD) February 11, 2014 1 / 26 Overview 1 Techniques for Multiprocessor Global

More information

Priority-driven Scheduling of Periodic Tasks (1) Advanced Operating Systems (M) Lecture 4

Priority-driven Scheduling of Periodic Tasks (1) Advanced Operating Systems (M) Lecture 4 Priority-driven Scheduling of Periodic Tasks (1) Advanced Operating Systems (M) Lecture 4 Priority-driven Scheduling Assign priorities to jobs, based on their deadline or other timing constraint Make scheduling

More information

Single Machine Scheduling with Generalized Total Tardiness Objective Function

Single Machine Scheduling with Generalized Total Tardiness Objective Function Single Machine Scheduling with Generalized Total Tardiness Objective Function Evgeny R. Gafarov a, Alexander A. Lazarev b Institute of Control Sciences of the Russian Academy of Sciences, Profsoyuznaya

More information

Single Machine Models

Single Machine Models Outline DM87 SCHEDULING, TIMETABLING AND ROUTING Lecture 8 Single Machine Models 1. Dispatching Rules 2. Single Machine Models Marco Chiarandini DM87 Scheduling, Timetabling and Routing 2 Outline Dispatching

More information

Power-Aware Scheduling of Conditional Task Graphs in Real-Time Multiprocessor Systems

Power-Aware Scheduling of Conditional Task Graphs in Real-Time Multiprocessor Systems Power-Aware Scheduling of Conditional Task Graphs in Real-Time Multiprocessor Systems Dongkun Shin School of Computer Science and Engineering Seoul National University sdk@davinci.snu.ac.kr Jihong Kim

More information

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved. Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved. 1 Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should

More information

LPT rule: Whenever a machine becomes free for assignment, assign that job whose. processing time is the largest among those jobs not yet assigned.

LPT rule: Whenever a machine becomes free for assignment, assign that job whose. processing time is the largest among those jobs not yet assigned. LPT rule Whenever a machine becomes free for assignment, assign that job whose processing time is the largest among those jobs not yet assigned. Example m1 m2 m3 J3 Ji J1 J2 J3 J4 J5 J6 6 5 3 3 2 1 3 5

More information

EDF Scheduling. Giuseppe Lipari May 11, Scuola Superiore Sant Anna Pisa

EDF Scheduling. Giuseppe Lipari   May 11, Scuola Superiore Sant Anna Pisa EDF Scheduling Giuseppe Lipari http://feanor.sssup.it/~lipari Scuola Superiore Sant Anna Pisa May 11, 2008 Outline 1 Dynamic priority 2 Basic analysis 3 FP vs EDF 4 Processor demand bound analysis Generalization

More information

CS 6901 (Applied Algorithms) Lecture 3

CS 6901 (Applied Algorithms) Lecture 3 CS 6901 (Applied Algorithms) Lecture 3 Antonina Kolokolova September 16, 2014 1 Representative problems: brief overview In this lecture we will look at several problems which, although look somewhat similar

More information

Basic Scheduling Problems with Raw Material Constraints

Basic Scheduling Problems with Raw Material Constraints Basic Scheduling Problems with Raw Material Constraints Alexander Grigoriev, 1 Martijn Holthuijsen, 2 Joris van de Klundert 2 1 Faculty of Economics and Business Administration, University of Maastricht,

More information

Completion Time Scheduling and the WSRPT Algorithm

Completion Time Scheduling and the WSRPT Algorithm Connecticut College Digital Commons @ Connecticut College Computer Science Faculty Publications Computer Science Department Spring 4-2012 Completion Time Scheduling and the WSRPT Algorithm Christine Chung

More information

princeton univ. F 17 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming

princeton univ. F 17 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming princeton univ. F 17 cos 521: Advanced Algorithm Design Lecture 6: Provable Approximation via Linear Programming Lecturer: Matt Weinberg Scribe: Sanjeev Arora One of the running themes in this course is

More information

Single Machine Problems Polynomial Cases

Single Machine Problems Polynomial Cases DM204, 2011 SCHEDULING, TIMETABLING AND ROUTING Lecture 2 Single Machine Problems Polynomial Cases Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline

More information

Scheduling on Unrelated Parallel Machines. Approximation Algorithms, V. V. Vazirani Book Chapter 17

Scheduling on Unrelated Parallel Machines. Approximation Algorithms, V. V. Vazirani Book Chapter 17 Scheduling on Unrelated Parallel Machines Approximation Algorithms, V. V. Vazirani Book Chapter 17 Nicolas Karakatsanis, 2008 Description of the problem Problem 17.1 (Scheduling on unrelated parallel machines)

More information

Andrew Morton University of Waterloo Canada

Andrew Morton University of Waterloo Canada EDF Feasibility and Hardware Accelerators Andrew Morton University of Waterloo Canada Outline 1) Introduction and motivation 2) Review of EDF and feasibility analysis 3) Hardware accelerators and scheduling

More information

RCPSP Single Machine Problems

RCPSP Single Machine Problems DM204 Spring 2011 Scheduling, Timetabling and Routing Lecture 3 Single Machine Problems Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. Resource

More information

On the Complexity of Mapping Pipelined Filtering Services on Heterogeneous Platforms

On the Complexity of Mapping Pipelined Filtering Services on Heterogeneous Platforms On the Complexity of Mapping Pipelined Filtering Services on Heterogeneous Platforms Anne Benoit, Fanny Dufossé and Yves Robert LIP, École Normale Supérieure de Lyon, France {Anne.Benoit Fanny.Dufosse

More information

An approximation algorithm for the minimum latency set cover problem

An approximation algorithm for the minimum latency set cover problem An approximation algorithm for the minimum latency set cover problem Refael Hassin 1 and Asaf Levin 2 1 Department of Statistics and Operations Research, Tel-Aviv University, Tel-Aviv, Israel. hassin@post.tau.ac.il

More information

Scheduling Linear Deteriorating Jobs with an Availability Constraint on a Single Machine 1

Scheduling Linear Deteriorating Jobs with an Availability Constraint on a Single Machine 1 Scheduling Linear Deteriorating Jobs with an Availability Constraint on a Single Machine 1 Min Ji a, b, 2 Yong He b, 3 T.C.E. Cheng c, 4 a College of Computer Science & Information Engineering, Zhejiang

More information

Clock-driven scheduling

Clock-driven scheduling Clock-driven scheduling Also known as static or off-line scheduling Michal Sojka Czech Technical University in Prague, Faculty of Electrical Engineering, Department of Control Engineering November 8, 2017

More information

Marjan van den Akker. Han Hoogeveen Jules van Kempen

Marjan van den Akker. Han Hoogeveen Jules van Kempen Parallel machine scheduling through column generation: minimax objective functions, release dates, deadlines, and/or generalized precedence constraints Marjan van den Akker Han Hoogeveen Jules van Kempen

More information

Multi-Operation Multi-Machine Scheduling

Multi-Operation Multi-Machine Scheduling Multi-Oeration Multi-Machine Scheduling Weizhen Mao he College of William and Mary, Williamsburg VA 3185, USA Abstract. In the multi-oeration scheduling that arises in industrial engineering, each job

More information

How much can lookahead help in online single machine scheduling

How much can lookahead help in online single machine scheduling JID:IPL AID:3753 /SCO [m3+; v 1.80; Prn:16/11/2007; 10:54] P.1 (1-5) Information Processing Letters ( ) www.elsevier.com/locate/ipl How much can lookahead help in online single machine scheduling Feifeng

More information

Non-preemptive multiprocessor scheduling of strict periodic systems with precedence constraints

Non-preemptive multiprocessor scheduling of strict periodic systems with precedence constraints Non-preemptive multiprocessor scheduling of strict periodic systems with precedence constraints Liliana Cucu, Yves Sorel INRIA Rocquencourt, BP 105-78153 Le Chesnay Cedex, France liliana.cucu@inria.fr,

More information

Clock Skew Scheduling in the Presence of Heavily Gated Clock Networks

Clock Skew Scheduling in the Presence of Heavily Gated Clock Networks Clock Skew Scheduling in the Presence of Heavily Gated Clock Networks ABSTRACT Weicheng Liu, Emre Salman Department of Electrical and Computer Engineering Stony Brook University Stony Brook, NY 11794 [weicheng.liu,

More information

Generalized Network Flow Techniques for Dynamic Voltage Scaling in Hard Real-Time Systems

Generalized Network Flow Techniques for Dynamic Voltage Scaling in Hard Real-Time Systems Generalized Network Flow Techniques for Dynamic Voltage Scaling in Hard Real-Time Systems Vishnu Swaminathan and Krishnendu Chakrabarty Department of Electrical & Computer Engineering Duke University Durham,

More information

Real-time Systems: Scheduling Periodic Tasks

Real-time Systems: Scheduling Periodic Tasks Real-time Systems: Scheduling Periodic Tasks Advanced Operating Systems Lecture 15 This work is licensed under the Creative Commons Attribution-NoDerivatives 4.0 International License. To view a copy of

More information

Dispersing Points on Intervals

Dispersing Points on Intervals Dispersing Points on Intervals Shimin Li 1 and Haitao Wang 1 Department of Computer Science, Utah State University, Logan, UT 843, USA shiminli@aggiemail.usu.edu Department of Computer Science, Utah State

More information

Deterministic Models: Preliminaries

Deterministic Models: Preliminaries Chapter 2 Deterministic Models: Preliminaries 2.1 Framework and Notation......................... 13 2.2 Examples... 20 2.3 Classes of Schedules... 21 2.4 Complexity Hierarchy... 25 Over the last fifty

More information