Competitive Algorithms for Fine-Grain Real-Time Scheduling

Size: px
Start display at page:

Download "Competitive Algorithms for Fine-Grain Real-Time Scheduling"

Transcription

1 Competitive Algorithms for Fine-Grain Real-Time Scheduling Michael A. Palis Department of Computer Science Rutgers University NJ Abstract Thispaper investigates the task scheduling problemfor real-time systems that provide rate of progress guarantees on task execution. A task system model, called task system, is introduced that allows rate of progress requirements to be specified in terms of two simple parameters: an execution rate r and a granularity g. The granularity parameter is a new metric that allows the specification of grain timing constraints on the task s execution and is a generalization of the stretch metric used an recent research on task scheduling. It is shown that the product as an important determiner of the existence of good online scheduling algorithms. Specifically, there is an upper bound on this product above which there are no good online algorithms but below which an online algorithm with logarithmic competitive ratio exists. This paper also demonstrates a fundamental difference between two contrasting strategies for admission control: greedy non-greedy. It is shown that greed does not pay : there is a scheduling algorithm with a non-greedy admission policy that provably outperforms the well-known Greedy EDF scheduling algorithm. 1 Introduction The growing need to support real-time interactive multimedia applications such videoconferencing, collaborative work, and remote entertainment, has made quality of service provisioning an important and challenging problem in the design of integrated-services networks and computer systems. To enable the system to provide guarantees, source applications specify their resource requirements and the system, in turn, reserves and schedules the use of resources in accordance with source specifications. Practical systems, however, have finite resources and hence a huge number of requests could easily bring the system to a state of overload that makes it impossible to satisfy the requirements of all requests. Thus, admission control is a necessary and integral component of such reservation-based systems. The task of admission control is to selectively admit requests such that the requirements of these requests, along with those of previously admitted requests, can be met by the system. In this paper we consider the problem of scheduling real-time tasks on a single-processor system in which a task s specification is expressed as a rate of progress requirement on the task s execution. One way to specifya task s rateof progress is by its stretch, which is the maximum slowdown that it can tolerate relative to the time it takes to run on an unloaded system. For example, a task which has an execution time of 100msec (on an unloaded system) and stretch 2 is allowed to run at a slower rate so longas it is completed no later than 200 msec after it arrives. More precisely, a task with arrival time a, execution time e and stretch s must complete execution no later than its deadline, a + se. A number of recent papers have addressed the task scheduling problem based on the stretch metric [3, 4, 5, 6, 8, 9, Muthukrishnan et al. [3, 4, presented offline and online scheduling algorithms that mimimize either the maximum stretch or the average stretch of the tasks in the system. and Palis [5, developed online preemptive scheduling algorithms with admission control for the stretch metric under both the hard model and firm real-time models. In the hard realtime model, the system guarantees that every admitted task is executed within its specified stretch and accrues a profit equal to the execution times of all admitted tasks. In the firm real-time model, the system is allowed to fail to meet the stretch requirements of certain admitted tasks, but does not gain a profit from such tasks. In Goldwasser considered a slightly different but related metric called slack and developed an online non-preemptive scheduling $ IEEE 129

2 -.- rithm. Finally, Garay et al. developed online preemptive algorithms for the slack metric for both the hard real-time and firm real-time models. Although the stretch metric is useful in certain applications web searches and database queries), it does not quite capture the more stringent rate of progress requirements inherent in many real-time applications, such as continuous media audio and video). While it is acceptable to slow down the processing of such applications as the system load increases, it is nonetheless crucial that the processing progresses at a relatively uniform rate throughout the lifetime of the application. Unfortunately, the stretch metric does not allow the specification of fine-grain timing constraints other than a single task deadline. As a result, the scheduling algorithms are prone to producing schedules in which a task s execution rate may vary widely between its arrival time and its deadline. In Yau and Lam presented a framework for adaptive rate-controlled scheduling that takes into account the rate of progress requirements of real-time applications that we alluded to above. In their framework, the system tasks to reserve processor time based on a rate (0 < 1) and a period p. The system guarantees that the task, if admitted, is executed for at least krp time units over the next kp time units after it arrives, for k =... For example, if the rate is 0.2 and the period is 100 msec, then the task is guaranteed to run for at least 20 ms over the first 100 msec after it arrives, for at least 40 msec over the first 200 msec, and so on. Yau and Lam developed an online preemptive scheduling algorithm for their model and presented an empirical evaluation of the algorithm on various applications. 1.1 Problem Statement In this paper we investigate the theoretical performance of online preemptive scheduling algorithms based on Yau and Lam s task model. Specifically, we consider the problem of scheduling a sequence of n independent tasks, =.., on a single processor system in which each task = is characterized by the following four parameters: an arrival time an execution time a rate 0 < 1; and a period pi. The arrival time is the time that the task first becomes runnable. The execution time is the amount of processor time the task needs to run without interruption on an unloaded system. The last two parameters specify the rate of progress requirement for executing the task. Specifically, upon its arrival at time task must be executed for at least time units during the time interval + for k =.. until it is completed has run a total of time units). We assume that Define as the granularity of task Note that 0 < 1 since Intuitively, the granularity is a measure of the smoothness of the task s execution profile: the finer the granularity the smaller is), the more uniform the task s rate of progress will be for any given time interval during its execution. Note that when = 1 for all tasks the resulting problem instance corresponds to the case when each task is characterized by a stretch equal to Thus, the granularity metric can be viewed as a generalization of the stretch metric. A sequence of tasks =...,T,} is called an task system if r 1 n} and g 1 n}. That is, in an task system every task has rate at most r and granularity at least g. We consider online preemptive scheduling algorithms for (r, task systems with admission control that satisfy the following property: Upon the arrival of a task T,the system immediately decides whether to admit or reject T. If it admits T then the system must execute T so that it satisfies its rate of progress requirement as described above. Thus, we assume a hard real-time model in which the system ensures that the requirements of all admitted tasks are met. We are interested in online scheduling algorithms that maximize the processor (or simply utilization), which is defined as the sum of the execution times of admitted tasks. We measure the performance of an online algorithm A in terms of its competitive ratio, which is the ratio of the utilization obtained by an optimal offline algorithm OPT to that obtained by algorithm A. More precisely, let and be the utilizations of A and OPT, respectively, for a sequence of tasks 7. We say that A has competitive ratio (or is c-competitive) if for every task sequence 1.2 Summary of Results In this paper we show that the task system model is useful in characterizing task systems which are difficult to schedule and those for which 130

3 cient scheduling algorithms exist. In particular, let = + 2. We show that: 0 For (r,g) task systems satisfying lg 1,there is an online scheduling algorithm, called NON- GREEDY EDF, that achieves a competitive ratio of Moreover, this algorithm is optimal: the competitive ratio achievable by any online algorithm for this class of task systems is 0 The rate bound lg 1is necessary: without this bound any online algorithm has a competitive ratio of Our results also demonstratea fundamental difference between two contrasting strategies for admission control: greedy vs. non-greedy. Many real-time scheduling algorithms implement admission control using a feasibility test to determine whether an incoming task, along with previously admitted tasks, has a schedule that meets all task deadlines. If so, the task is admitted and added to a run queue of admitted tasks, which are then scheduled for execution by a run-time scheduler. That is, the admission controller implicitly employs a greedy policy: it always admits a task if it can be feasibly scheduled with previously admitted tasks. The results of this paper and a previous paper show that a greedy admission control policy is provably bud. In particular, in we investigated GREEDY-EDF,an online algorithm for g)task systems that uses a greedy admission policy and a runtime scheduler based on the Earliest Deadline First (EDF) scheduling algorithm. In that paper we showed that GREEDY-EDF has competitive ratio Hence for rate-bounded ing g) task systems satisfy- < 1, GREEDY-EDF has competitive ratio In contrast, the NON-GREEDY E D F algorithm uses a non-greedy admissionpolicy. Instead of a feasibility test, NON-GREEDY EDF employs a throttle test to reject certain incoming tasks, even when these tasks can be feasibly scheduled, to allow future more profitable tasks to be admitted. At the same time, since the online algorithm has no knowledge of future tasks, it maintains a large enough pool of admitted tasks to ensure that the processor utilization is never too low. Our work is motivated in part by previous work of Awerbuch, Azar and (AAP) on online routing of virtual circuits in ATM networks. They considered the problem of routing a sequence of calls,where each call requires the establishment of a virtual circuit between two nodes in the network for a given time duration (the holding time) and at a specified bandwidth. They assume an idealized fluid flow model in which each admitted call must be guaranteed its requested bandwidth at every time step throughout its duration. They developed an online routing algorithm that achieves a competitive ratio of provided that each call has a requested bandwidth that is at most fraction of the link capacity, where L is the maximum number of hops allowed for a single circuit and is the maximum duration of any call. The AAP routing algorithm can be used to obtain a scheduling algorithm for maximally fine-grain task systems in which each admitted task runs continuously at a rate for every time step over a duration of length d. That is, each task has granularity The resulting algorithm achieves a competitive ratio of where is the maximum duration of any task, provided that the task rates are at most lg D). Our online algorithm generalizes this result for task systems of arbitrary granularity, from maximally fine-grain task systems to maximally coarse-grain ones corresponding to those of the stretch model described earlier. 1.3 Map The rest of the paper is organized as follows. The next section describes the online scheduling algorithm NON-GREEDY EDF. Section 3 proves the correctness of the online algorithm and analyzes its complexity. Section 4 proves the upper bound on the competitive ratio of the online algorithm for rate-bounded task systems. Section 5 proves the matching lower bound on the competitive ratio for rate-bounded task systems and a lower bound for task systems with unbounded rates. Finally, Section 6 ends the paper with some concluding remarks and a discussion of future work. 2 The NON-GREEDY EDF Scheduling Algorithm NON-GREEDY E D F consists of two components: (1) an EDF-based scheduler that schedules the execution of admitted tasks on the processor, and (2) an admission controller that admits or rejects tasks based on an admission test. Let.. be the task sequence to be processed, where = Thus, task has granularity Let g and = We assume that 131

4 the rates satisfy the condition: lg 1for 1 n. This restriction is necessary in order to achieve a competitive ratio of As proved later in Section 5, without this restriction the competitive ratio of any online algorithm is We first describe the scheduler. It is based on the Earliest Deadline First (EDF) scheduling algorithm (see, [7, Informally, each admitted task T = (a,e, is scheduled as a sequence of m = jobs such that: (a) for 1 the execution time and deadline of the i-th job are and respectively; and (b) the execution time and deadline of the m-th job are e- (m- and a + respectively. Item (b) above takes into account the fact that = l/g may not be an integer. The deadline d of the (entire) tasktis the deadline of its last job; d =a+ Given a set of admitted tasks, the scheduler executes the tasks according to an EDF schedule of the jobs comprising these tasks. Clearly, the rate of progress requirements of the admitted tasks are satisfied if the corresponding jobs are executed by their respective deadlines. The details of the scheduler are as follows. It maintains a run queue of tasks that have been admitted but not yet completed. It also maintains a timing variable which measures the amount of time that the processor has been running since it was last idle. It resets to zero when the processor becomes idle and the run queue is empty. That is, measures time relative to the beginning of the current busy interval during which the processor is continuously executing some task. Henceforth, when we refer to time (including task arrival times and deadlines), we shall mean time relative to the beginning of the current busy interval, which is time 0. Associated with each admitted task in the run queue are two variables: a reserved time and an intermediate deadline d > The scheduler is invoked at each rescheduling point, which is a time when one of following events occurs: For case the scheduler first checks if the currently running task T = has completed has run for a total of e time units). If so,t is removed from the queue. Otherwise, the scheduler updates scheduling variables to d = d + and = rp. (If e is not a multiple of then last job requires time units. In this case, is set to the remaining execution time and d is set to a+ The then selects the queue the task with the smallest d value and runs this task next. If the queue is empty, the processor becomes idle and the timer is reset to zero. For case the scheduler adds the new initializes its d and values to d = and = If the processor is idle at the time is admitted, then is immediately executed and the timer is started (signaling the beginning of a new busy interval). On the other hand, if the processor is currently running some task and this task has a value greater than d value, then the currently running task is preempted and returned to the queue and its value is reduced by the amount of time it has consumed since it was last run. The new task is then selected to run next. We now describe the admission controller. It is invoked every time a new task arrives and performs an admission test to determine whether to admit or reject the new task. Consider the arrival of task at time = If = 0, then the processor is idle and is immediately admitted and executed (thus starting a new busy On the other hand, if 0, the admission controller does the following. Let be the set of tasks in the current busy interval that have already been admitted before the arrival of Let = be a task in and let = + beti sdeadline. For each t 0, defineti srate contribution at time t as: if t < = 0 otherwise rate contribution at time t is defined as: The processor is busy and the currently running task has run for an amount of time equal to its reserved time; or A new task is admitted by the admission controller. The admission controller admits if and only if 132

5 Inequality 3 is a throttle test that determines whether it would be profitable to admit task It is instructive to understand the reasoning behind this test. For each task define the load of at time denoted as the minimum processor time that would need during the time interval in order to meet its rate of progress requirement, where is Ti sarrival time. Similarly, let = In the next section we show that: That is, the only tasks that pass the admission test of inequality 3 are those tasks satisfying: In the above inequality, the load is multiplied by a weight which is exponential in the fractional load at time due to already admitted tasks. If for all the weighted load does not exceed then is admitted and the algorithm obtains a profit. Inequality 4 can, in fact, be used as an admission test, and it can be shown that the resulting online algorithm achieves a competitive ratio of Unfortunately, this test is costly to perform because it requires computing the loads and for every time step On the other hand, as we show in the next section, the quantity - 1)dt of inequality 3 can be computed in time. Furthermore, the resulting algorithm also achieves competitive ratio (albeit, with a slightly larger constant of proportionality). 3 Complexity Analysis and Proof of Correctness For a given task sequence, NON-GREEDY EDF produces a schedule that consists of an alternating sequence of busy and idle intervals, where a busy (idle) interval corresponds to the case when the processor is (is not) running some task. Note that every task must have arrived during a busy interval. If the task arrived when the processor idle, then = 0 and the task would pass the admission test and be immediately executed, thus starting a new busy interval. Additionally, every admitted task is completed during the same busy interval when it arrived. Thus, no scheduling, task execution, or admission control activities occur during idle intervals and so it suffices to consider busy intervals when analyzing the complexity and correctness of the scheduling algorithm. Consider an arbitrary busy interval and let..., be the sequence of tasks that arrive during this busy interval. For each let be the set of tasks that have already been admitted before the arrival of An alternative (but equivalent) admission test can be obtained by observing that the function of equation 2 is piecewise linear and = 0 for all t In particular, consider the the half-open time interval [0, for some > 0. Call t a breakpoint of in if t t is either the arrival time or the deadline of some task in (Note that t = 0 is a breakpoint since it is the arrival time of the first task in Let 0 = < < be the breakpoints of in and let = Then the breakpoint intervals b, = < k, form a partition of Moreover, changes in value only at the breakpoints t,, 1 k. Specifically, for a t, < say that covers if where = + is Ti s deadline. Then, for every t b,, = where is the sum of the rates of all tasks that cover b,. Let = - t,. It follows that: Lemma 1 provides the following equivalent but more efficient method for performing the admission test. Given compute = and determine the breakpoints {t, 1 < < k} of in Let = For each breakpoint compute and Admit tasktj if and only if The number of breakpoints in [0, is at most 2 Thus, the can all be computed in time. As for the note that can be computed from by simply adding the rates of admitted tasks that arrive at time t, and subtracting the rates of those with deadlines equal to t,. Thus, computing the also takes time. Finally, the summation in inequality 5 can also be computed in time. Therefore, the admission test can be performed in time. Lemma together with the followingtechnical lemma (whose proof we omit because of space limitations), 133

6 will be used to prove the correctness of the scheduling algorithm. Lemma 2. Let and 1 k} be positive real numbers and 1 be nonnegative k real numbers. For every The last step follows from the fact that for every t, (t- Since by assumption 1, it follows that:. Consider an arbitrary busy interval and let =... be the sequence of tasks that arrive during this busy interval. To prove the correctness of the algorithm, it suffices to show that: Theorem 1. For each S, if task is admitted, then all previously admitted tasks, plus are schedulable, can be executed according to their rate of progress requirements. Proof. Let S be the set of tasks that have already been admitted before the arrival of Clearly, if is the first admitted task, then = and is schedulable. Inductively, assume that is not the first admitted task and is schedulable. We want to prove that if is admitted then is schedulable. For each task = U define the load of at time t as since = + 2. Let 0 = < < < be the breakpoints of in the interval and let = For each breakpoint interval, = 1 let = - t, and be the sum of the rates of all tasks in that cover b,. From equation 6, it is easy to see that for each task Therefore, Ti cowers That is, is the amount of processor time that would need during the interval t)in order to meet its rate of progress requirement. Similarly, we define the load of at time t as = ( 6,) Ti cowers Thus, from inequalities 8 and 9, we get: k Suppose to the contrary that is admitted but U is not schedulable. Then there exists a time such that But by lemmas 1 and 2, This implies that Thus, - 1)dt and hence: 134

7 By assumption, 1. Hence, - 1 = - since - for Noting that = +1,we get: - since g Let be the subset of tasks in S admitted by algorithm A. Since (t)= 0,it follows that for every Therefore, - 1) > and hence should have been rejected by the online which is a contradiction. 4 Competitive Analysis In this section we analyze the competitive performance of NON-GREEDY EDF. In particular, we prove the following: Theorem 2. For task systems satisfying r 1, where = + 2, NON-GREEDY EDF achieves a competitive ratio of Proof. Let be an task system such that r lg 1. For notational convenience, let A be the NON-GREEDY EDF algorithm and let OPT be an optimal offline algorithm. As described previously, A produces a schedule for that consists of disjoint busy intervals that partition into disjoint subsets.., where is the subset of tasks that arrive during the i-th busy interval. Since Hence, Since for each admitted task and = - = we get: dt it suffices to consider an arbitrary busy interval and the subset of tasks S = that arrive during the busy interval and prove that A achieves a competitive ratio of for the tasks in S. In the following, we in fact show that: 2 = (10) For each = S and for each 0, let = - 1. Consider the arrival of task S. If was rejected by A,then (t)= (t) for every t. On the other hand, if was admitted by A then: Let be the subset of tasks in S admitted by the optimal algorithm OPT. If = then = and the theorem is proved. Otherwise, there exists a task with the latest deadline admitted by OPT but rejected by A. (If there are several such tasks with the same latest deadline, choose the task with the largest index.) Since was rejected by A, then by the admission test of inequality 3 it should be the case that: Using inequality 11 this implies that 135

8 Adding to both sides of the above inequality and noting that + = the deadline of we Since the processor was continuously busy during the time interval Therefore, Now, all tasks admitted by OPT with deadlines must be completed by OPT no later than time Furthermore, by the definition of all tasks admitted by OPT with deadlines > must have also been admitted by A. Thus, + This, together with the above inequality, implies that: 5 Lower Bounds on the Competitive Ratio In this section we show that NON-GREEDY EDF is optimal in the sense that even for rate-bounded systems, those satisfying lg 1, any online algorithm has competitive ratio We also show that the rate bound is necessary because for task systems with 1, the best possible competitive ratio achievable by any online algorithm is ((1 We begin by proving the following result. Theorem 3. For task systems, any online scheduling algorithm has a competitive ratio of for any < 1. Proof. Let A be any online scheduling algorithm and let m = l/g and = Consider the task sequence which consists of k task subsets.., for some finite k. For each consists of s identical tasks each with execution time = rate = and period = Every task in has arrival time 0 but we assume that the adversary the to A in distinct phases. That is, the tasks in become known to A only at the start of phase a and phase + 1 does not begin until A has processed all the tasks in Let p 1 be a fixed constant. First we show that there is an adversarial strategy for that forces A to incur a competitive ratio of at least p. Then we show that the strategy holds for p = (lgm + thus proving the theorem. For each phase k 1, the adversary's strategy is as follows. Let 1 k, be the number of tasks in admitted by A and let = If the adversary stops the task sequence at the end of phase k, rejects all tasks from all previous phases i, 1 i < k, and admits just the s tasks in Thus, the adversary obtains a utilization = while A obtains a utilization = = Hence the competitive ratio is On the other hand, if > the adversary continues with the next phase + 1 by the tasks in We show that there is some phase k for which must necessarily be because otherwise there will not be a feasible schedule. Consider time t = For 1 k, = is the number of periods of a task in that ends at or before time t. Therefore, by time t A must run each admitted task in for at least = time units, provided that = or m. Summing over all tasks, A must run for at least = time units by time t in order the satisfy the rate of progress requirements of all admitted tasks in.. Now suppose that for every 1 k. Then it can be shown that > (k which implies that > + Clearly, there is no feasible schedule if > t, which happens when p (k+ Thus, if the adversary chooses p = (k+ then A can achieve a feasible schedule only if which implies that A's competitive ratio is p. Finally, the adversary chooses to satisfy the constraint that m for It is easy to verify that this constraint is satisfied when = lgm + 1. The theorem follows since for this value of = (lgm + For task systems with "large rates", those satisfying 1, a stronger lower bound of (( can be shown. Consequently, it is necessary to impose the rate bound of lg 1if one hopes to achieve a competitive ratio of Theorem 4. For task systems satisfying 136

9 1, any online scheduling algorithm has a competitive ratio of Proof Sketch. The case when = 1is easily proved by considering a sequence of two tasks and both with granularity g, such that has unit execution time and has execution time e = An online scheduler must admit (since it may be the only task) but cannot also admit On the other hand, an optimal algorithm would admit resulting in a competitive ratio of Hence, assume that < 1. Let m = and be any real number, 0 < < 1. Consider the task sequence = 0 i defined as follows: 0 has execution time = rate = and period = has execution time = m, rate = and period = and 0 For 2 i s, has execution time = + rate = and period = + where a 1 is an integer constant and is a real number satisfying < 1, - E )}. The proof hinges on the fact that for any integer a 1, an online scheduler A must admit.. for every k,0 k to obtain a competitive ratio < a- E. On the other hand, A cannot admit after it has already admitted..., because doing so would result in overload at time t = + To see this, we note that for 1 i s, = is the number of periods of task that ends at or before time t. That is, A must run for at least time units by time t in order to meet its rate of progress requirement, provided that In addition, since = 6s s t, A must run for at least one period, consuming at least 6 > 0 time units. Thus, by time t, A must run.. for at least = t > t. Thus, A cannot admit which implies The above argument holds provided that for 1 or equivalently, + C2: + m, and m for Clearly, implies C2. Hence, it suffices to show that if rlgm 1, holds for some integer a 1. It can - i be shown that a = satisfies these constraints. Therefore, we conclude that: for any 0< E < 1. 6 Concluding Remarks and Future Work We have introduced the g)task system model that allows rate ofprogress requirements of real-time tasks to be specified in terms of two simple parameters: an execution rate and a granularity We have shown that this model is useful in delineating the boundary between task systems which are difficult to schedule and those for which efficient scheduling algorithms exist. In particular, efficient online scheduling algorithms only exist for task systems satisfying the rate bound, We have also shown that there is a a fundamental difference between two contrasting strategies for admission control: greedy vs. non-greedy. In particular, a non-greedy admission policy provably outperforms a greedy policy for bounded task systems. The results of this paper, however, do come with a caveat. It assumes a task model in which a task can run continuously without interrruption on an unloaded system. This is different from Liu and land's periodic task model or sporadic task model in which a task consists of a succession of events, each with a distinct arrival time, and an event cannot be processed until it arrives. Other eventdriven task models include the rate-based execution (RBE) model of Jeffay and Goddard the multiframe task model of Mok the generalized multiframe task model of Baruah et. and the Reservations scheduling framework of Microsoft Research's operating system For eventdriven task systems, the processor may become idle even though there are admitted tasks that have not finished because the next events of these tasks have not yet occurred. Unfortunately, our analysis relies on the assumption that an admitted task is always runnable until it actually finishes, and hence is not applicable to these task systems. An interesting open problem is to find competitive online scheduling algorithms for event-driven systems based on the g) 137

10 task model introduced here. Finally, it would be interesting to extend the results to the firm real-time model and to multiprocessor systems. References Awerbuch, B., Y. Azar, and S. Plotkin, Throughout-Competitive On-Line Routing, Proc. 34th IEEE Symposium on Foundations of Computer Science, 32-40, Nov [2] Baruah, S., D. Chen, S. Gorinksy, and A. Mok, Generalized Multiframe Tasks, Intl. Journal of Tirne-Critical Computing Systems, 17, 22, [3] Becchetti, L., S. Leonardi and S. Muthukrishnan, Scheduling to Minimize Average Stretch without Migration,Proc. 11thAnnual ACM-SIAM Symp. on Discrete Algorithms, , [4] Bender, M., S. Chakrabarti and S. ishnan, Flow and Stretch for Scheduling Continuous task Streams, Proc. 9th Annual ACM-SIAM Symp. on Discrete Algorithms, 279, [5] Dasgupta, B. and M. A. Palis, Online Real-Time Preemptive Scheduling of Tasks with Deadlines on Multiple Machines, Proc. 3rd Intl. Workshop on Approximation Algorithms for Combinatorial Optimization Problems, Lecture Notes in Computer Science 1913, , Dasgupta, B. and M. A. Palis Online Real-Time Preemptive Scheduling of Tasks with Deadlines on Multiple Machines, Journal of Scheduling , [7] Dertouzos, M., Control Robotics: the Procedural Control of Physical Processors, Proc. IFIP Congress, , Garay, J., J. Naor, B. Yener, P. On-Line Admission Control and Packet Scheduling with Proc. IEEE INFOCOM 2002, 103, June Goldwasser, M., Patience is a The Effect of Slack on Competitivenessfor Admission Control, Proc. 10th ACM-SIAM Symposium on Discrete Algorithms, , Jan Jones, M., J. and A. An Overview of the Real-Time Architecture, Proc. 7th ACM SIGOPS European Workshop, , Sept Jones, M., D. ROSU, and ROSU, Reservations and Time Constraints: Predictable Scheduling of Independent Activities, Proc. 16th ACM Symposium on Operating Systems Principles, , Oct Liu, C. L. and W. Scheduling gorithms for Multiprogramming in a Hard Real Time Environment, JACM, 20, 46-61, Mok, A., Fundamental Design Problems of Distributed Systems for the Hard Real-Time Environment, Doctoral Dissertation, M.I.T., Mok, A. A Multiframe Model for Real-Time Tasks, IEEE Trans. on Software Engineering, , Oct Muthukrishnan, S., R. Rajaraman, A. Shaheen and J. E. Gehrke, Online Scheduling to Minimize Average Stretch, Proc. 40th Annual IEEE Symp. on Foundations of Computer Science, , Palis, M. A., On the Competitiveness of Online Real- Time Scheduling with Rate of Progress Guarantees, International Journal of Foundations of Computer Science, , Plotkin, S., Competitive Routing of Virtual Circuits in ATM Networks, IEEE Journal on Selected Areas in Communications, 1136, Aug Yau, D. K. Y. and S. S. Lam, Adaptive Rate- Controlled Scheduling for Multimedia Applications, Transactions on Networking, Jeffay, K. and S. Goddard, A Theory of Rate- Based Execution, Proc. 20th IEEE Real-Time Systems Symposium, ,

Rate-monotonic scheduling on uniform multiprocessors

Rate-monotonic scheduling on uniform multiprocessors Rate-monotonic scheduling on uniform multiprocessors Sanjoy K. Baruah The University of North Carolina at Chapel Hill Email: baruah@cs.unc.edu Joël Goossens Université Libre de Bruxelles Email: joel.goossens@ulb.ac.be

More information

Non-clairvoyant Scheduling for Minimizing Mean Slowdown

Non-clairvoyant Scheduling for Minimizing Mean Slowdown Non-clairvoyant Scheduling for Minimizing Mean Slowdown N. Bansal K. Dhamdhere J. Könemann A. Sinha April 2, 2003 Abstract We consider the problem of scheduling dynamically arriving jobs in a non-clairvoyant

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

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

Real-Time and Embedded Systems (M) Lecture 5

Real-Time and Embedded Systems (M) Lecture 5 Priority-driven Scheduling of Periodic Tasks (1) Real-Time and Embedded Systems (M) Lecture 5 Lecture Outline Assumptions Fixed-priority algorithms Rate monotonic Deadline monotonic Dynamic-priority algorithms

More information

Schedulability analysis of global Deadline-Monotonic scheduling

Schedulability analysis of global Deadline-Monotonic scheduling Schedulability analysis of global Deadline-Monotonic scheduling Sanjoy Baruah Abstract The multiprocessor Deadline-Monotonic (DM) scheduling of sporadic task systems is studied. A new sufficient schedulability

More information

Optimal Utilization Bounds for the Fixed-priority Scheduling of Periodic Task Systems on Identical Multiprocessors. Sanjoy K.

Optimal Utilization Bounds for the Fixed-priority Scheduling of Periodic Task Systems on Identical Multiprocessors. Sanjoy K. Optimal Utilization Bounds for the Fixed-priority Scheduling of Periodic Task Systems on Identical Multiprocessors Sanjoy K. Baruah Abstract In fixed-priority scheduling the priority of a job, once assigned,

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

Real-time scheduling of sporadic task systems when the number of distinct task types is small

Real-time scheduling of sporadic task systems when the number of distinct task types is small Real-time scheduling of sporadic task systems when the number of distinct task types is small Sanjoy Baruah Nathan Fisher Abstract In some real-time application systems, there are only a few distinct kinds

More information

EDF Feasibility and Hardware Accelerators

EDF Feasibility and Hardware Accelerators EDF Feasibility and Hardware Accelerators Andrew Morton University of Waterloo, Waterloo, Canada, arrmorton@uwaterloo.ca Wayne M. Loucks University of Waterloo, Waterloo, Canada, wmloucks@pads.uwaterloo.ca

More information

On-line Bin-Stretching. Yossi Azar y Oded Regev z. Abstract. We are given a sequence of items that can be packed into m unit size bins.

On-line Bin-Stretching. Yossi Azar y Oded Regev z. Abstract. We are given a sequence of items that can be packed into m unit size bins. On-line Bin-Stretching Yossi Azar y Oded Regev z Abstract We are given a sequence of items that can be packed into m unit size bins. In the classical bin packing problem we x the size of the bins and try

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

CMSC 451: Lecture 7 Greedy Algorithms for Scheduling Tuesday, Sep 19, 2017

CMSC 451: Lecture 7 Greedy Algorithms for Scheduling Tuesday, Sep 19, 2017 CMSC CMSC : Lecture Greedy Algorithms for Scheduling Tuesday, Sep 9, 0 Reading: Sects.. and. of KT. (Not covered in DPV.) Interval Scheduling: We continue our discussion of greedy algorithms with a number

More information

A 2-Approximation Algorithm for Scheduling Parallel and Time-Sensitive Applications to Maximize Total Accrued Utility Value

A 2-Approximation Algorithm for Scheduling Parallel and Time-Sensitive Applications to Maximize Total Accrued Utility Value A -Approximation Algorithm for Scheduling Parallel and Time-Sensitive Applications to Maximize Total Accrued Utility Value Shuhui Li, Miao Song, Peng-Jun Wan, Shangping Ren Department of Engineering Mechanics,

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

A lower bound for scheduling of unit jobs with immediate decision on parallel machines

A lower bound for scheduling of unit jobs with immediate decision on parallel machines A lower bound for scheduling of unit jobs with immediate decision on parallel machines Tomáš Ebenlendr Jiří Sgall Abstract Consider scheduling of unit jobs with release times and deadlines on m identical

More information

Dispatching Equal-length Jobs to Parallel Machines to Maximize Throughput

Dispatching Equal-length Jobs to Parallel Machines to Maximize Throughput Dispatching Equal-length Jobs to Parallel Machines to Maximize Throughput David P. Bunde 1 and Michael H. Goldwasser 2 1 Dept. of Computer Science, Knox College email: dbunde@knox.edu 2 Dept. of Mathematics

More information

Predictability of Least Laxity First Scheduling Algorithm on Multiprocessor Real-Time Systems

Predictability of Least Laxity First Scheduling Algorithm on Multiprocessor Real-Time Systems Predictability of Least Laxity First Scheduling Algorithm on Multiprocessor Real-Time Systems Sangchul Han and Minkyu Park School of Computer Science and Engineering, Seoul National University, Seoul,

More information

arxiv: v1 [cs.ds] 30 Jun 2016

arxiv: v1 [cs.ds] 30 Jun 2016 Online Packet Scheduling with Bounded Delay and Lookahead Martin Böhm 1, Marek Chrobak 2, Lukasz Jeż 3, Fei Li 4, Jiří Sgall 1, and Pavel Veselý 1 1 Computer Science Institute of Charles University, Prague,

More information

On-line Scheduling to Minimize Max Flow Time: An Optimal Preemptive Algorithm

On-line Scheduling to Minimize Max Flow Time: An Optimal Preemptive Algorithm On-line Scheduling to Minimize Max Flow Time: An Optimal Preemptive Algorithm Christoph Ambühl and Monaldo Mastrolilli IDSIA Galleria 2, CH-6928 Manno, Switzerland October 22, 2004 Abstract We investigate

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

RUN-TIME EFFICIENT FEASIBILITY ANALYSIS OF UNI-PROCESSOR SYSTEMS WITH STATIC PRIORITIES

RUN-TIME EFFICIENT FEASIBILITY ANALYSIS OF UNI-PROCESSOR SYSTEMS WITH STATIC PRIORITIES RUN-TIME EFFICIENT FEASIBILITY ANALYSIS OF UNI-PROCESSOR SYSTEMS WITH STATIC PRIORITIES Department for Embedded Systems/Real-Time Systems, University of Ulm {name.surname}@informatik.uni-ulm.de Abstract:

More information

Weighted flow time does not admit O(1)-competitive algorithms

Weighted flow time does not admit O(1)-competitive algorithms Weighted flow time does not admit O(-competitive algorithms Nihil Bansal Ho-Leung Chan Abstract We consider the classic online scheduling problem of minimizing the total weighted flow time on a single

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

Competitive Management of Non-Preemptive Queues with Multiple Values

Competitive Management of Non-Preemptive Queues with Multiple Values Competitive Management of Non-Preemptive Queues with Multiple Values Nir Andelman and Yishay Mansour School of Computer Science, Tel-Aviv University, Tel-Aviv, Israel Abstract. We consider the online problem

More information

Chapter 4. Greedy Algorithms. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.

Chapter 4. Greedy Algorithms. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. Chapter 4 Greedy Algorithms Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. 1 4.1 Interval Scheduling Interval Scheduling Interval scheduling. Job j starts at s j and

More information

On the Soft Real-Time Optimality of Global EDF on Multiprocessors: From Identical to Uniform Heterogeneous

On the Soft Real-Time Optimality of Global EDF on Multiprocessors: From Identical to Uniform Heterogeneous On the Soft Real-Time Optimality of Global EDF on Multiprocessors: From Identical to Uniform Heterogeneous Kecheng Yang and James H. Anderson Department of Computer Science, University of North Carolina

More information

Online Packet Routing on Linear Arrays and Rings

Online Packet Routing on Linear Arrays and Rings Proc. 28th ICALP, LNCS 2076, pp. 773-784, 2001 Online Packet Routing on Linear Arrays and Rings Jessen T. Havill Department of Mathematics and Computer Science Denison University Granville, OH 43023 USA

More information

Chapter 4. Greedy Algorithms. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.

Chapter 4. Greedy Algorithms. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. Chapter 4 Greedy Algorithms Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. 1 4.1 Interval Scheduling Interval Scheduling Interval scheduling. Job j starts at s j and

More information

Multiprocessor Real-Time Scheduling Considering Concurrency and Urgency

Multiprocessor Real-Time Scheduling Considering Concurrency and Urgency Multiprocessor Real-Time Scheduling Considering Concurrency Urgency Jinkyu Lee, Arvind Easwaran, Insik Shin Insup Lee Dept. of Computer Science, KAIST, South Korea IPP-HURRAY! Research Group, Polytechnic

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

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

Real-time Scheduling of Periodic Tasks (1) Advanced Operating Systems Lecture 2 Real-time Scheduling of Periodic Tasks (1) Advanced Operating Systems Lecture 2 Lecture Outline Scheduling periodic tasks The rate monotonic algorithm Definition Non-optimality Time-demand analysis...!2

More information

Lecture 6. Real-Time Systems. Dynamic Priority Scheduling

Lecture 6. Real-Time Systems. Dynamic Priority Scheduling Real-Time Systems Lecture 6 Dynamic Priority Scheduling Online scheduling with dynamic priorities: Earliest Deadline First scheduling CPU utilization bound Optimality and comparison with RM: Schedulability

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

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

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

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

Task assignment in heterogeneous multiprocessor platforms

Task assignment in heterogeneous multiprocessor platforms Task assignment in heterogeneous multiprocessor platforms Sanjoy K. Baruah Shelby Funk The University of North Carolina Abstract In the partitioned approach to scheduling periodic tasks upon multiprocessors,

More information

CSE101: Design and Analysis of Algorithms. Ragesh Jaiswal, CSE, UCSD

CSE101: Design and Analysis of Algorithms. Ragesh Jaiswal, CSE, UCSD Course Overview Material that will be covered in the course: Basic graph algorithms Algorithm Design Techniques Greedy Algorithms Divide and Conquer Dynamic Programming Network Flows Computational intractability

More information

ONLINE SCHEDULING OF MALLEABLE PARALLEL JOBS

ONLINE SCHEDULING OF MALLEABLE PARALLEL JOBS ONLINE SCHEDULING OF MALLEABLE PARALLEL JOBS Richard A. Dutton and Weizhen Mao Department of Computer Science The College of William and Mary P.O. Box 795 Williamsburg, VA 2317-795, USA email: {radutt,wm}@cs.wm.edu

More information

On Two Class-Constrained Versions of the Multiple Knapsack Problem

On Two Class-Constrained Versions of the Multiple Knapsack Problem On Two Class-Constrained Versions of the Multiple Knapsack Problem Hadas Shachnai Tami Tamir Department of Computer Science The Technion, Haifa 32000, Israel Abstract We study two variants of the classic

More information

Schedulability of Periodic and Sporadic Task Sets on Uniprocessor Systems

Schedulability of Periodic and Sporadic Task Sets on Uniprocessor Systems Schedulability of Periodic and Sporadic Task Sets on Uniprocessor Systems Jan Reineke Saarland University July 4, 2013 With thanks to Jian-Jia Chen! Jan Reineke July 4, 2013 1 / 58 Task Models and Scheduling

More information

An Optimal Real-Time Scheduling Algorithm for Multiprocessors

An Optimal Real-Time Scheduling Algorithm for Multiprocessors An Optimal Real-Time Scheduling Algorithm for Multiprocessors Hyeonjoong Cho, Binoy Ravindran, and E. Douglas Jensen ECE Dept., Virginia Tech Blacksburg, VA 24061, USA {hjcho,binoy}@vt.edu The MITRE Corporation

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

EDF Scheduling. Giuseppe Lipari CRIStAL - Université de Lille 1. October 4, 2015

EDF Scheduling. Giuseppe Lipari  CRIStAL - Université de Lille 1. October 4, 2015 EDF Scheduling Giuseppe Lipari http://www.lifl.fr/~lipari CRIStAL - Université de Lille 1 October 4, 2015 G. Lipari (CRIStAL) Earliest Deadline Scheduling October 4, 2015 1 / 61 Earliest Deadline First

More information

Non-preemptive Scheduling of Distance Constrained Tasks Subject to Minimizing Processor Load

Non-preemptive Scheduling of Distance Constrained Tasks Subject to Minimizing Processor Load Non-preemptive Scheduling of Distance Constrained Tasks Subject to Minimizing Processor Load Klaus H. Ecker Ohio University, Athens, OH, USA, ecker@ohio.edu Alexander Hasenfuss Clausthal University of

More information

Paper Presentation. Amo Guangmo Tong. University of Taxes at Dallas January 24, 2014

Paper Presentation. Amo Guangmo Tong. University of Taxes at Dallas January 24, 2014 Paper Presentation Amo Guangmo Tong University of Taxes at Dallas gxt140030@utdallas.edu January 24, 2014 Amo Guangmo Tong (UTD) January 24, 2014 1 / 30 Overview 1 Tardiness Bounds under Global EDF Scheduling

More information

Optimal Admission Control of Discrete Event Systems with Real-Time Constraints

Optimal Admission Control of Discrete Event Systems with Real-Time Constraints Proceedings of the 46th IEEE Conference on Decision and Control New Orleans, LA, USA, Dec. 12-14, 27 Optimal Admission Control of Discrete Event Systems with Real-Time Constraints Jianfeng Mao and Christos

More information

AS computer hardware technology advances, both

AS computer hardware technology advances, both 1 Best-Harmonically-Fit Periodic Task Assignment Algorithm on Multiple Periodic Resources Chunhui Guo, Student Member, IEEE, Xiayu Hua, Student Member, IEEE, Hao Wu, Student Member, IEEE, Douglas Lautner,

More information

the currently active 1 job whose deadline parameter is the smallest, is an optimal scheduling algorithm in the sense that if a system can be scheduled

the currently active 1 job whose deadline parameter is the smallest, is an optimal scheduling algorithm in the sense that if a system can be scheduled Priority-driven scheduling of periodic task systems on multiprocessors Λ Joël Goossens Shelby Funk Sanjoy Baruah Abstract The scheduling of systems of periodic tasks upon multiprocessor platforms is considered.

More information

CPU SCHEDULING RONG ZHENG

CPU SCHEDULING RONG ZHENG CPU SCHEDULING RONG ZHENG OVERVIEW Why scheduling? Non-preemptive vs Preemptive policies FCFS, SJF, Round robin, multilevel queues with feedback, guaranteed scheduling 2 SHORT-TERM, MID-TERM, LONG- TERM

More information

Semi-clairvoyant Scheduling

Semi-clairvoyant Scheduling Semi-clairvoyant Scheduling Luca Becchetti 1, Stefano Leonardi 1, Alberto Marchetti-Spaccamela 1 Dipartimento di Informatica e Sistemistica, Università di Roma La Sapienza, Via Salaria 113, 00198 Rome,

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

Open Problems in Throughput Scheduling

Open Problems in Throughput Scheduling Open Problems in Throughput Scheduling Jiří Sgall Computer Science Institute of Charles University, Faculty of Mathematics and Physics, Malostranské nám. 25, CZ-11800 Praha 1, Czech Republic. sgall@iuuk.mff.cuni.cz

More information

SPT is Optimally Competitive for Uniprocessor Flow

SPT is Optimally Competitive for Uniprocessor Flow SPT is Optimally Competitive for Uniprocessor Flow David P. Bunde Abstract We show that the Shortest Processing Time (SPT) algorithm is ( + 1)/2-competitive for nonpreemptive uniprocessor total flow time

More information

Scheduling I. Today. Next Time. ! Introduction to scheduling! Classical algorithms. ! Advanced topics on scheduling

Scheduling I. Today. Next Time. ! Introduction to scheduling! Classical algorithms. ! Advanced topics on scheduling Scheduling I Today! Introduction to scheduling! Classical algorithms Next Time! Advanced topics on scheduling Scheduling out there! You are the manager of a supermarket (ok, things don t always turn out

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

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University Che-Wei Chang chewei@mail.cgu.edu.tw Department of Computer Science and Information Engineering, Chang Gung University } 2017/11/15 Midterm } 2017/11/22 Final Project Announcement 2 1. Introduction 2.

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

CHAPTER 5 - PROCESS SCHEDULING

CHAPTER 5 - PROCESS SCHEDULING CHAPTER 5 - PROCESS SCHEDULING OBJECTIVES To introduce CPU scheduling, which is the basis for multiprogrammed operating systems To describe various CPU-scheduling algorithms To discuss evaluation criteria

More information

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

Scheduling Algorithms for Multiprogramming in a Hard Realtime Environment

Scheduling Algorithms for Multiprogramming in a Hard Realtime Environment Scheduling Algorithms for Multiprogramming in a Hard Realtime Environment C. Liu and J. Layland Journal of the ACM, 20(1):46--61, January 1973. 2 Contents 1. Introduction and Background 2. The Environment

More information

Resource Sharing in an Enhanced Rate-Based Execution Model

Resource Sharing in an Enhanced Rate-Based Execution Model In: Proceedings of the 15th Euromicro Conference on Real-Time Systems, Porto, Portugal, July 2003, pp. 131-140. Resource Sharing in an Enhanced Rate-Based Execution Model Xin Liu Steve Goddard Department

More information

TDDB68 Concurrent programming and operating systems. Lecture: CPU Scheduling II

TDDB68 Concurrent programming and operating systems. Lecture: CPU Scheduling II TDDB68 Concurrent programming and operating systems Lecture: CPU Scheduling II Mikael Asplund, Senior Lecturer Real-time Systems Laboratory Department of Computer and Information Science Copyright Notice:

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

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

A Dynamic Real-time Scheduling Algorithm for Reduced Energy Consumption

A Dynamic Real-time Scheduling Algorithm for Reduced Energy Consumption A Dynamic Real-time Scheduling Algorithm for Reduced Energy Consumption Rohini Krishnapura, Steve Goddard, Ala Qadi Computer Science & Engineering University of Nebraska Lincoln Lincoln, NE 68588-0115

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

A New Task Model and Utilization Bound for Uniform Multiprocessors

A New Task Model and Utilization Bound for Uniform Multiprocessors A New Task Model and Utilization Bound for Uniform Multiprocessors Shelby Funk Department of Computer Science, The University of Georgia Email: shelby@cs.uga.edu Abstract This paper introduces a new model

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 6 Greedy Algorithms Interval Scheduling Interval Partitioning Scheduling to Minimize Lateness Sofya Raskhodnikova S. Raskhodnikova; based on slides by E. Demaine,

More information

CS 374: Algorithms & Models of Computation, Spring 2017 Greedy Algorithms Lecture 19 April 4, 2017 Chandra Chekuri (UIUC) CS374 1 Spring / 1

CS 374: Algorithms & Models of Computation, Spring 2017 Greedy Algorithms Lecture 19 April 4, 2017 Chandra Chekuri (UIUC) CS374 1 Spring / 1 CS 374: Algorithms & Models of Computation, Spring 2017 Greedy Algorithms Lecture 19 April 4, 2017 Chandra Chekuri (UIUC) CS374 1 Spring 2017 1 / 1 Part I Greedy Algorithms: Tools and Techniques Chandra

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

The Feasibility Analysis of Multiprocessor Real-Time Systems

The Feasibility Analysis of Multiprocessor Real-Time Systems The Feasibility Analysis of Multiprocessor Real-Time Systems Sanjoy Baruah Nathan Fisher The University of North Carolina at Chapel Hill Abstract The multiprocessor scheduling of collections of real-time

More information

Tardiness Bounds under Global EDF Scheduling on a. Multiprocessor

Tardiness Bounds under Global EDF Scheduling on a. Multiprocessor Tardiness Bounds under Global EDF Scheduling on a Multiprocessor UmaMaheswari C. Devi and James H. Anderson Department of Computer Science The University of North Carolina at Chapel Hill Abstract We consider

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

TDDI04, K. Arvidsson, IDA, Linköpings universitet CPU Scheduling. Overview: CPU Scheduling. [SGG7] Chapter 5. Basic Concepts.

TDDI04, K. Arvidsson, IDA, Linköpings universitet CPU Scheduling. Overview: CPU Scheduling. [SGG7] Chapter 5. Basic Concepts. TDDI4 Concurrent Programming, Operating Systems, and Real-time Operating Systems CPU Scheduling Overview: CPU Scheduling CPU bursts and I/O bursts Scheduling Criteria Scheduling Algorithms Multiprocessor

More information

Spare CASH: Reclaiming Holes to Minimize Aperiodic Response Times in a Firm Real-Time Environment

Spare CASH: Reclaiming Holes to Minimize Aperiodic Response Times in a Firm Real-Time Environment Spare CASH: Reclaiming Holes to Minimize Aperiodic Response Times in a Firm Real-Time Environment Deepu C. Thomas Sathish Gopalakrishnan Marco Caccamo Chang-Gun Lee Abstract Scheduling periodic tasks that

More information

Partitioned scheduling of sporadic task systems: an ILP-based approach

Partitioned scheduling of sporadic task systems: an ILP-based approach Partitioned scheduling of sporadic task systems: an ILP-based approach Sanjoy K. Baruah The University of North Carolina Chapel Hill, NC. USA Enrico Bini Scuola Superiore Santa Anna Pisa, Italy. Abstract

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

A Theory of Rate-Based Execution. A Theory of Rate-Based Execution

A Theory of Rate-Based Execution. A Theory of Rate-Based Execution Kevin Jeffay Department of Computer Science University of North Carolina at Chapel Hill jeffay@cs cs.unc.edu Steve Goddard Computer Science & Engineering University of Nebraska Ð Lincoln goddard@cse cse.unl.edu

More information

CSE 380 Computer Operating Systems

CSE 380 Computer Operating Systems CSE 380 Computer Operating Systems Instructor: Insup Lee & Dianna Xu University of Pennsylvania, Fall 2003 Lecture Note 3: CPU Scheduling 1 CPU SCHEDULING q How can OS schedule the allocation of CPU cycles

More information

Online interval scheduling on uniformly related machines

Online interval scheduling on uniformly related machines Online interval scheduling on uniformly related machines Leah Epstein Lukasz Jeż Jiří Sgall Rob van Stee August 27, 2012 Abstract We consider online preemptive throughput scheduling of jobs with fixed

More information

An Improved Schedulability Test for Uniprocessor. Periodic Task Systems

An Improved Schedulability Test for Uniprocessor. Periodic Task Systems An Improved Schedulability Test for Uniprocessor Periodic Task Systems UmaMaheswari C. Devi Department of Computer Science, University of North Carolina, Chapel Hill, NC 27599-375 December 2002 Abstract

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

Online Interval Coloring and Variants

Online Interval Coloring and Variants Online Interval Coloring and Variants Leah Epstein 1, and Meital Levy 1 Department of Mathematics, University of Haifa, 31905 Haifa, Israel. Email: lea@math.haifa.ac.il School of Computer Science, Tel-Aviv

More information

Online Scheduling of Parallel Jobs on Two Machines is 2-Competitive

Online Scheduling of Parallel Jobs on Two Machines is 2-Competitive Online Scheduling of Parallel Jobs on Two Machines is 2-Competitive J.L. Hurink and J.J. Paulus University of Twente, P.O. box 217, 7500AE Enschede, The Netherlands Abstract We consider online scheduling

More information

Preemptive Online Scheduling: Optimal Algorithms for All Speeds

Preemptive Online Scheduling: Optimal Algorithms for All Speeds Preemptive Online Scheduling: Optimal Algorithms for All Speeds Tomáš Ebenlendr Wojciech Jawor Jiří Sgall Abstract Our main result is an optimal online algorithm for preemptive scheduling on uniformly

More information

Scheduling Slack Time in Fixed Priority Pre-emptive Systems

Scheduling Slack Time in Fixed Priority Pre-emptive Systems Scheduling Slack Time in Fixed Priority Pre-emptive Systems R.I.Davis Real-Time Systems Research Group, Department of Computer Science, University of York, England. ABSTRACT This report addresses the problem

More information

Resource Sharing Protocols for Real-Time Task Graph Systems

Resource Sharing Protocols for Real-Time Task Graph Systems Resource Sharing Protocols for Real-Time Task Graph Systems Nan Guan, Pontus Ekberg, Martin Stigge, Wang Yi Uppsala University, Sweden Northeastern University, China Abstract Previous works on real-time

More information

The Partitioned Dynamic-priority Scheduling of Sporadic Task Systems

The Partitioned Dynamic-priority Scheduling of Sporadic Task Systems The Partitioned Dynamic-priority Scheduling of Sporadic Task Systems Abstract A polynomial-time algorithm is presented for partitioning a collection of sporadic tasks among the processors of an identical

More information

Load Regulating Algorithm for Static-Priority Task Scheduling on Multiprocessors

Load Regulating Algorithm for Static-Priority Task Scheduling on Multiprocessors Technical Report No. 2009-7 Load Regulating Algorithm for Static-Priority Task Scheduling on Multiprocessors RISAT MAHMUD PATHAN JAN JONSSON Department of Computer Science and Engineering CHALMERS UNIVERSITY

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

Controlling Preemption for Better Schedulability in Multi-Core Systems

Controlling Preemption for Better Schedulability in Multi-Core Systems 2012 IEEE 33rd Real-Time Systems Symposium Controlling Preemption for Better Schedulability in Multi-Core Systems Jinkyu Lee and Kang G. Shin Dept. of Electrical Engineering and Computer Science, The University

More information

Chapter 3: Discrete Optimization Integer Programming

Chapter 3: Discrete Optimization Integer Programming Chapter 3: Discrete Optimization Integer Programming Edoardo Amaldi DEIB Politecnico di Milano edoardo.amaldi@polimi.it Website: http://home.deib.polimi.it/amaldi/opt-16-17.shtml Academic year 2016-17

More information

Knapsack and Scheduling Problems. The Greedy Method

Knapsack and Scheduling Problems. The Greedy Method The Greedy Method: Knapsack and Scheduling Problems The Greedy Method 1 Outline and Reading Task Scheduling Fractional Knapsack Problem The Greedy Method 2 Elements of Greedy Strategy An greedy algorithm

More information

A New Sufficient Feasibility Test for Asynchronous Real-Time Periodic Task Sets

A New Sufficient Feasibility Test for Asynchronous Real-Time Periodic Task Sets A New Sufficient Feasibility Test for Asynchronous Real-Time Periodic Task Sets Abstract The problem of feasibility analysis for asynchronous periodic task sets (ie where tasks can have an initial offset

More information

immediately, without knowledge of the jobs that arrive later The jobs cannot be preempted, ie, once a job is scheduled (assigned to a machine), it can

immediately, without knowledge of the jobs that arrive later The jobs cannot be preempted, ie, once a job is scheduled (assigned to a machine), it can A Lower Bound for Randomized On-Line Multiprocessor Scheduling Jir Sgall Abstract We signicantly improve the previous lower bounds on the performance of randomized algorithms for on-line scheduling jobs

More information

Scheduling I. Today Introduction to scheduling Classical algorithms. Next Time Advanced topics on scheduling

Scheduling I. Today Introduction to scheduling Classical algorithms. Next Time Advanced topics on scheduling Scheduling I Today Introduction to scheduling Classical algorithms Next Time Advanced topics on scheduling Scheduling out there You are the manager of a supermarket (ok, things don t always turn out the

More information

Online Scheduling of Jobs with Fixed Start Times on Related Machines

Online Scheduling of Jobs with Fixed Start Times on Related Machines Algorithmica (2016) 74:156 176 DOI 10.1007/s00453-014-9940-2 Online Scheduling of Jobs with Fixed Start Times on Related Machines Leah Epstein Łukasz Jeż Jiří Sgall Rob van Stee Received: 10 June 2013

More information

arxiv: v1 [cs.os] 6 Jun 2013

arxiv: v1 [cs.os] 6 Jun 2013 Partitioned scheduling of multimode multiprocessor real-time systems with temporal isolation Joël Goossens Pascal Richard arxiv:1306.1316v1 [cs.os] 6 Jun 2013 Abstract We consider the partitioned scheduling

More information