Analysis of Round-Robin Implementations of Processor Sharing, Including Overhead
|
|
- George Baker
- 5 years ago
- Views:
Transcription
1 Analysis of Round-Robin Implementations of Processor Sharing, Including Overhead Steve Thompson and Lester Lipsky Computer Science & Engineering University of Connecticut Storrs, CT Sarah Tasneem Math and Computer Science Eastern Connecticut State University Willimantic, CT 66 Feng Zhang Computer Science & Engineering University of Connecticut Storrs, CT Abstract It has been observed in recent years that in many applications service time demands are highly variable. Without foreknowledge of exact service times of individual jobs, processor sharing is an effective theoretical strategy for handling such demands. In practice, however, processor sharing must be implemented by time-slicing with a round-robin discipline. In this paper, we investigate how round-robin performs with the consideration of job switching overhead. Because of recent results, we assume that the best strategy is for new jobs to preempt the one in service. By analyzing time-slicing with overhead, we derive the effective utilization parameter, and give a good approximation regarding the lower bound of time-slice under a given system load and overhead. The simulation results show that for both exponential and non-exponential distributions, the system blowup points agree with what the effective utilization parameter tells us. Furthermore, with the consideration of overhead, an optimum time-slice value exists for a particular environment. I. INTRODUCTION In recent years it has been observed that many service time demands are highly variable [], [], [3], [4]. For example, the web and data servers were found to receive requests with processing times varying over several orders of magnitude [3], [4]. It is often the case that the majority of the jobs are short, while a tiny fraction of the largest flows constitutes more than half of the total load []. Such highly varied job demands can be modeled by some distribution. Specifically, let X be the random variable denoting the time needed for service by a single request, with the following definitions of F(x), the Probability Distribution Function (PDF), and probability density function (pdf), f(x). F(x) := Pr(X x), with f(x) := df(x) dx, Also let R(x) := F(x) (Complementary Distribution, or Reliability Function). then E[X l ] := with mean and variance o x l f(x)dx, x := E[X], σ = E[X ] ( x), We can then say that service demands are highly variable when C, where C σ := (E[X]) is the squared coefficient of variation. If the individual customer demands are known exactly, shortest-remaining-processing-time (SRP T ), which preempts the current customer being served if the newly arrived customer has less service time requirement, is optimal [], [6]. However, in many cases, no foreknowledge of exact service times of individual customers is available. In such a case, the default queueing discipline is first-come-first-served (FCFS). It is well known that FCFS at a single server yields a mean system time (total time for a customer, including waiting for service), given by the Pollaczek-Khinchine (P-K) formula: E[T s ] = x + x C, where the utilization is = λ x (λ being the arrival rate). Clearly, the larger C is, the longer is the system time. Because of this there has been an increased interest in processor sharing (PS), as this brings the mean system time to that of C =, i.e., E[T ps ] = x Clearly, if C < it would be foolish to use PS, since in this case E[T s ] < E[T ps ]. Therefore, hereafter we will always assume that C. It has been argued that FCFS is the fairest queueing discipline, and any attempt to let later arriving customers get earlier service is unfair. But for PS, the mean time for a job with service time x to complete service is x/( ). In other words the expected time spent getting and waiting for service is directly proportional to the amount of time needed. This too has a sense of fairness about it. Another scheduling scheme, Last Come first Served Preemptive Resume (LCFSPR) has also been considered because it produces the same mean system time as PS. Here an arriving customer preempts the customer presently being served and continues in this vein until he finishes or is himself preempted
2 by a newer arrival. The structure is a stack rather than a queue. But the system time is much more varied, and small jobs may actually get stuck in the queue for inordinately long times. Therefore, this scheme is considered unfair. Actually PS is an idealization, because it is virtually impossible to implement it on a single server. How can the server be dynamically partitioned into n pieces with each piece running independently? Instead one can use time-slicing with a round-robin discipline. A time interval, is chosen, and each job in the queue (actually, a ring) is allowed access to the processor for that time interval. As the discipline approaches PS. In any case, the job either finishes in that interval, or is interrupted and the processor is passed on to the next job. When a new job arrives several options are available. (A) It can be placed somewhere in the ring [(A) next in line, (A) last, or (A3) in a random slot], or (B) it can preempt the one presently in service. If the latter, then there are several options for the interrupted job after the newly arrived job finishes. Either it can (B) lose the rest of its time slice (the system moves to the next job in the ring); (B) receive the remaining time in its slice; or (B3) receive a whole new time slice. We have studied this in a previous paper [7] and found, by extensive simulations, that if option (A) is selected, the mean system time increases with increasing, approaching E[T s ], whereas (B) stays near x/( ), because with preemption the discipline approaches LCFSPR. In fact (B) and (B3) actually outperform PS over a wide range of values for. The shorter jobs get through even more quickly, while the longer jobs are only slightly delayed. (B) seems to outperform (B3) [(B3) would tend to favor longer jobs], so in what follows we will consider only (B) in our analysis. The rest of this paper is organized as follows: Section II summarizes some related work; Section III describes our analytical model for time-slicing with overhead; The simulation results are presented in Section IV; Section V concludes the paper. II. RELATED WORK Some analytical results have been given in the case of exponential service distribution with the consideration of overhead. For example, by assuming a constant swapping time overhead per time-slice, the exact expressions were presented in [8] for computing the queue size distribution and average waiting time for M/M/ using round-robin scheduling. The optimum quantum length was determined by considering a cost measure based on assigning priorities to jobs in a decreasing function of job service time. Similarly, this assumption was made in [9] for comparing round-robin and multi-quantum round-robin (i.e., an additional quantum being given to the currently executed job if a new job arrives during its execution) with exponential service distribution. However, the analysis of system performance for handling highly varied customer demands is more difficult if overhead is considered. So overhead is often assumed to be negligible. Cao et. al. [], presented an M/G/ K processor sharing queueing model of a multi-threaded web server. The model verification is accomplished by conducting experiments with one server (with Apache) and multiple clients. Server farm architecture is economic and flexible, which typically consists of a collection of servers and a front end high speed router. Analysis of different routing policies for FCFS server farms in the setting of high job size variability is reported in []. Gupta et. al. presented the first analysis of Join-Shortest-Queue for processor sharing farms []. They reported a single queue approximation to analyze a server farm by looking at just one queue in isolation from all other queues, but where the arrival rate into the queue is conditional (state dependent) on the number of jobs at that queue. This state dependent arrival rate is used to capture the effect of the other queues. A recent paper by Gupta [3] covered similar material to what we do here, but with the constraint that an arriving customer must wait for all customers already present to get a time slice before it gets its first. However, we have shown in a previous paper [7] that as long as C >, this is the worst strategy among those easily implementable in such systems. Therefore the performance formulas presented there are not applicable here. In [7] simulation results have been produced for several RR variants with negligible switching overhead, where a newly arrived job preempts the current active job. Our results demonstrated that significant improvement of mean system time can be achieved by allowing preemption in RR scheduling. Even if the newly arrived job is put at the front of the queue (without preemption) performance is better than putting it last. In this paper, we take the overhead into account. III. TIME-SLICING WITH OVERHEAD Since there must be some overhead cost in using timeslicing with a round-robin discipline, we now assume that each time slice costs α x units of time to implement, and a new job interrupt costs α x. For now we assume that α = α. Clearly, the smaller, the more interrupts occur and the greater the overhead. Fortunately we have found, for α =, [7] that minimum system time occurs somewhere in the range x/ < < x, depending on the distribution F(x) examined. That is, most jobs can finish in one time slice. Our goal here is to see where the minimum is when α >. But first it is necessary to know the range of values for which a simulation is meaningful. It is clear that overhead added to workload can overrun the server, causing system time to become unbounded. This depends on, α, and. To get some insight into the interrelationship of these parameters we first find the expected number of time intervals needed by a job. The probability that a job will require exactly n time slices of length is Pr[N( ) = n] = R([n ] ) R(n ), n.
3 Then the expected number of slices is given by npr[n( ) = n] = n= n [R([n ] ) R(n )]. n= After some manipulation this becomes R(n ) = R(n ) +, () n= where we have made use of the fact that R() =. The first sum (from ), when multiplied by, is nothing more than the left-hand-rule for numerical integration of R(x). The second sum (from ) is the right-hand-rule for numerical integration. But it is known that o R(x)dx = x, and since R(x) in a monotonically non-increasing function of x, it follows that E[N( )] = R(n ) This leads to or x R(n ) n= = E[N( )]. x + E[N( )] x, x + γ( ) () where γ( ). In Appendix A we derive explicit formulas for E[N( )] for hyper-exponential and Erlangiantype distributions. In all those cases, and small enough, we show that x/ + / is a good approximation to E[N( )]. In Appendix B we state and outline the proof for a theorem describing lim γ( ). We now claim that the total processor time needed by a job, on average, is x plus the amount of overhead it needs to handle the context switching. I.e., (the subscript e stands for effective ) x e = x + α xe[n( )], then the effective utilization parameter is e := λ x e = + αe[n( )] (3) For the system to be stable, it is required that e <. By using Equation (3) and e = we get a bounding relationship among α,, and. That is, for a given and α, the minimum time slice, min satisfies the non-linear equation αe[n( min )] =. (4) and > min for all acceptable time slices. If instead, and α are given, then for stability, < max := + αe[n( )]. () Finally, for given and, the overhead factor must satisfy α < α max := E[N( )]. As an example, in Appendix A we show that for exponential service time distributions, e / x. So for =., and α {.,.,.,.}, Equation () gives max {.,.97,.887,.7973}. The blow-up points in Figure correspond to these values. IV. SIMULATION RESULTS When e we expect the system to be unstable. To test this we ran some simulations of algorithm (B), with exponential service time distribution, with parameters =., and α {.,.,.,. }. Each run saw 9 arrivals. The results are shown in Figure. As expected, bigger α s caused the system time to blow up with smaller. We tested Equation (3) by plotting ( e ) Rt() versus, as shown in Figure. Here, all the curves are horizontal until e =, at which point the curves are meaningless. The height of each line is precisely x o. Given that our argument is correct, this result is to be expected. That is, all the curves in Figure satisfy Rt( α) = x e (6) e the same as the M/M/ and PS queues. Note, this is only true for exponential service times. Only in that case are time slices irrelevant, because every job, no matter how much service it has already received has the same expected time remaining (memoryless property). Figure 3 shows the same story even when the service times are non-exponential, in this case hyper-exponential- with x = and C =, namely, R(x) = p e xµ + ( p)e xµ. (7) We have chosen p =., µ =.36 and µ = Then p/µ + ( p)/µ =. Figure 3 looks like Figure. The blow-ups occur for the same values of, namely when e =. But when each curve is multiplied by ( e ), the difference between exponential and non-exponential service times becomes evident, as seen in Figure 4. Here the lines are not horizonal. In fact they have a negative slope, indicating, in this case, that response time is improving (getting smaller) relative to PS, as increases. Although we feel we have presented some interesting results, the practical application is in selecting (perhaps dynamically) the time-slice that is best for a particular working environment. Suppose that the workload and overhead are known (by knowing what R(x) and α are). Further, at some
4 4 4 3 α =. α =. Exponential Distribution = α =. α =. Hyper Exponential Distribution (p =., c =) =. 3 3 Rt() RT() Fig.. Round-robin Time-slicing queue with Exponential Service times. Rt() versus, with time slice, =.. Each time slice costs the server a factor of, α {α {.,.,.,. }. Fig. 3. Rt() versus, with Hyper-exponential Service times. =., C =, and α {.,.,.,. }. The blow-up points again occur at e =. RT()*( o ) Exponential Distribution =. α =. α = Fig.. Exponential Service times. Rt() ( e) versus, with =. The lines are horizontal, indicating that Equation (6) is correct, something to be expected for exponential service times. RT()*( o ) Hyper Exponential Distribution (p =., c =) α =. α =. = Fig. 4. Same Hyper-exponential Service times as Figure 3. But now Rt() ( e) versus is plotted. As in the previous figures, =.. Note that the lines have a negative slope, implying that Rt() is smaller than for pure PS. time, the arrival rate, λ has been measured. Then, can be computed, permitting the system to be studied as is varied. Figure is one such study, for hyper-exponential service times and =.7. Note that even for no overhead (α = ) timeslicing outperforms PS, with a minimum at about opt =.. That is, each time slice is larger than the mean service time. For non-negligible overhead, performance blows up if is too small, i.e., less than min according to Equation (4), but there is an optimum opt for each α. As α increases, so does opt. For very large, the system approaches LCFSPR, where each job needs x(+α) amount of service. After all, each job must interrupt the system once upon its arrival. V. CONCLUSIONS AND FUTURE WORK In this paper, we studied the performance of time-slicing with overhead. An analytical model was presented to calculate the job arrival rate as well as the lower bound time-slice value when the system will become unstable. The simulation study verifies the model. In presenting this study we have selected a specific algorithm for implementing time slicing. We have not discussed other algorithms, except a brief description in the introduction. We plan to do that in the future. In particular, the two alternatives labeled (B) and (B3) will be examined closely. Also, in creating our simulation, we assumed that if a job
5 Rt() Hyper Exponential Distribution (p =., c =) =.7 α =.. α =. 3 Fig.. Hyper-exponential Service times. Rt() versus for several values of α, and =.7. arrives while the processor is in overhead mode, then the new job interrupts the overhead and begins execution, starting with execution of the overhead needed for its initiation. When the new job s time slice is over (or the job completes), the interrupted overhead function resumes where it left off. In reality this is probably over optimistic, and we plan to run simulations where the overhead function must start over. We will also modify our analytic model to account for this as well (if we can). We also intend to look more deeply at the distribution of response times. APPENDIX A - EVALUATION OF E[N( )] In Equation () we established that R(n ). If the service time is exponentially distributed, then [ R(n ) = e n / x = e / x] n. Therefore the sum is a geometric series (where n= zn = /( z), yielding exp( / x) = x + + x +. Thus we see from its definition in Equation () that γ( ) / as long as < x. It follows directly that if the service time is hyper-exponential-, as given by Equation (7), then p e µ + p e µ x + + p µ where µ > µ. For hyper-exponential distributions in general, it is clear that γ( ) / as long as µ max <, where µ max = max{µ i }. The Erlangian- distribution has a reliability function of the form R(x) = ( + µx)e µx where E[X] = x = /µ. Then [ (e µ ) n ( + µ n e µ ) ] n After some manipulation, using n= nzn = z/( z), we get e µ + µ e µ ( e µ ). A Taylor series expansion yields E[N( )] x Once again, γ( ) / if < x. ( ) 3. x APPENDIX B - γ( ) FOR ANY DISTRIBUTION We have seen that for Distributons with exponential tails γ( ) /. Here we state as a theorem the behavior for all distributions, and then outline the proofs. Theorem: We have already seen that γ( ), defined by Equation (), is bounded by and. () If R(x) and f(x) are continuous in [, ) then lim γ( ) = /. () If R(x) and f(x) are continuous in (, ), but R( + ) = p then lim γ( ) = p (3) Even if R(x) has a finite number of kinks [f(x) has a finite number of discontinuities] the above equation is valid. If there are an infinite number of kinks then the limit still exists but depends on the particular function. (4) If R(x > ) has at least one discontinuity then the limit does not exist. Let r be the sum of these discontinuities, then γ( ) = p r + a( )r where a( ) varies cyclically between and as x/ goes from one integer value to the next with decreasing. Proof: () We have seen that γ( ) = R(n ) x. Consider the interval between n and (n + ). The area of the rectangle with height R(n ) minus the area bounded from above by R(x) is a triangular-like piece with height [R(n ) R((n + ) )]. If R (x) is continuous, then as gets smaller, R(x) approaches a straight line. The area of this triangle, then becomes [R(n ) R((n+) )]/+O( 3 ). The sum of these triangles equals γ( ), so γ( ) = [R(n ) R((n + ) )] + O( ) n= = R() + O( ) =.
6 () If there is an initial impulse [R( + ) = p < ] then the first interval has an initial rectangle of height ( p) on top of a triangle. This adds an area of ( p) to the sum of triangles, yielding γ( ) = ( p) + p p + O( ) =. (3) If R(x) has kinks then the intervals containing the kinks will not be triangles. But if there are only a finite number of kinks, then as becomes small enough, there will be exactly one interval for each kink (no two kinks will fall in the same interval). But the area of each is of order of (both the height and width get smaller with ) and since there are only a finite number of them, their contribution to the sum goes to. It is not clear what happens if here are an infinite number of kinks. (4) If R(x > ) has even one discontinuity [R(y ) R(y + ) > for some y > ] then the area contributed changes with. This differs from () because there the impulse always occurs at the beginning of the first interval, whereas here the impulse can occur anywhere in the interval. Consider the simplest example, the deterministic distribution. Here, R(x) = for x < x and R(x) = for x > x. Then by definition, γ( ) = E[N( )] x = x x. For some, x/ will be an integer, in which case, γ( ) =. But as soon as decreases slightly, the ceiling function, and thus γ( ), jumps by, gradually decreasing to as x/ approaches the next integer value. REFERENCES [] M. E. Crovella and A. Bestavros, Self-similarity in world wide web traffic: Evidence and possible causes, IEEE/ACM Transactions on Networking, vol., no. 6, pp , 997. [] M. Greiner, M. Jobmann, and L. Lipsky, The importance of powertail distributions for modeling queueing systems, Operations Research, vol. 47, no., pp , 999. [3] H. Han, S. Shakkottai, S. Member, C. V. Hollot, R. Srikant, and D. Towsley, Multi-path tcp: A joint congestion control and routing scheme to exploit path diversity on the internet, IEEE/ACM Transactions on Networking, vol. 4, no. 6, pp. 6 7, 6. [4] D. Starobinski and M. Sidi, Modeling and analysis of power-tail distributions via classical teletraffic methods, Queueing Syst. Theory Appl., vol. 36, no. -3, pp ,. [] N. Bansal and M. Harchol-Balter, Analysis of srpt scheduling: Investigating unfairness, in Proc. ACM Sigmetrics,. [6] L. Schrage and L. Miller, The Queue M/G/ with the Shortest Processing Remaining Time Discipline, Operations Research, vol. 4, pp , 966. [7] F. Zhang, S. Tasneem, L. Lipsky, and S. Thompson, Analysis of roundrobin variants: Favoring newly arrived jobs, in 4nd Annual Simulation Symposium (ANSS 9), 9. [8] P. J. Rasch, A queueing theory study of round-robin scheduling of time-shared computer systems, J. ACM, vol. 7, no., pp. 3 4, 97. [9] H. C. Heacox, Jr. and P. W. Purdom, Jr., Analysis of two time-sharing queueing models, J. ACM, vol. 9, no., pp. 7 9, 97. [] J. Cao, M. Andersson, C. Nyberg, and M. Kihl, Web server performance modeling using an m/g//k*ps queue, in th International Conference on Telecommunications (ICT3, 3, pp. 6. [] M. Harchol-Balter, M. E. Crovella, and C. D. Murta, On choosing a task assignment policy for a distributed server system, J. Parallel Distrib. Comput., vol. 9, no., pp. 4 8, 999. [] V. Gupta, M. Harchol Balter, K. Sigman, and W. Whitt, Analysis of join-the-shortest-queue routing for web server farms, Perform. Eval., vol. 64, no. 9-, pp. 6 8, 7. [3] V. Gupta, Finding the optimal quantum size: Sensitivity analysis of the m/g/ round-robin queue, in th Workshop on Mathematical Performance Modeling and Analysis (MAMA 8), 8.
Servers. Rong Wu. Department of Computing and Software, McMaster University, Canada. Douglas G. Down
MRRK-SRPT: a Scheduling Policy for Parallel Servers Rong Wu Department of Computing and Software, McMaster University, Canada Douglas G. Down Department of Computing and Software, McMaster University,
More informationThe Impact of Quanta on the Performance of Multi-level Time Sharing Policy under Heavy-tailed Workloads
The Impact of Quanta on the Performance of Multi-level Time Sharing Policy under Heavy-tailed Workloads Malith Jayasinghe 1 Zahir Tari 1 Panlop Zeephongsekul 2 1 School of Computer Science and Information
More informationComp 204: Computer Systems and Their Implementation. Lecture 11: Scheduling cont d
Comp 204: Computer Systems and Their Implementation Lecture 11: Scheduling cont d 1 Today Scheduling algorithms continued Shortest remaining time first (SRTF) Priority scheduling Round robin (RR) Multilevel
More informationScheduling 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 informationScheduling 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 informationModule 5: CPU Scheduling
Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation 5.1 Basic Concepts Maximum CPU utilization obtained
More informationChapter 6: CPU Scheduling
Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation 6.1 Basic Concepts Maximum CPU utilization obtained
More informationChe-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 informationCPU Scheduling. Heechul Yun
CPU Scheduling Heechul Yun 1 Recap Four deadlock conditions: Mutual exclusion No preemption Hold and wait Circular wait Detection Avoidance Banker s algorithm 2 Recap: Banker s Algorithm 1. Initialize
More informationM/G/1 and Priority Queueing
M/G/1 and Priority Queueing Richard T. B. Ma School of Computing National University of Singapore CS 5229: Advanced Compute Networks Outline PASTA M/G/1 Workload and FIFO Delay Pollaczek Khinchine Formula
More informationCPU 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 informationMulti-layered Round Robin Routing for Parallel Servers
Multi-layered Round Robin Routing for Parallel Servers Douglas G. Down Department of Computing and Software McMaster University 1280 Main Street West, Hamilton, ON L8S 4L7, Canada downd@mcmaster.ca 905-525-9140
More information2/5/07 CSE 30341: Operating Systems Principles
page 1 Shortest-Job-First (SJR) Scheduling Associate with each process the length of its next CPU burst. Use these lengths to schedule the process with the shortest time Two schemes: nonpreemptive once
More informationDesigning load balancing and admission control policies: lessons from NDS regime
Designing load balancing and admission control policies: lessons from NDS regime VARUN GUPTA University of Chicago Based on works with : Neil Walton, Jiheng Zhang ρ K θ is a useful regime to study the
More informationPerformance Analysis of Priority Queueing Schemes in Internet Routers
Conference on Information Sciences and Systems, The Johns Hopkins University, March 8, Performance Analysis of Priority Queueing Schemes in Internet Routers Ashvin Lakshmikantha Coordinated Science Lab
More informationQueueing Theory and Simulation. Introduction
Queueing Theory and Simulation Based on the slides of Dr. Dharma P. Agrawal, University of Cincinnati and Dr. Hiroyuki Ohsaki Graduate School of Information Science & Technology, Osaka University, Japan
More informationQueueing systems. Renato Lo Cigno. Simulation and Performance Evaluation Queueing systems - Renato Lo Cigno 1
Queueing systems Renato Lo Cigno Simulation and Performance Evaluation 2014-15 Queueing systems - Renato Lo Cigno 1 Queues A Birth-Death process is well modeled by a queue Indeed queues can be used to
More informationCPU scheduling. CPU Scheduling
EECS 3221 Operating System Fundamentals No.4 CPU scheduling Prof. Hui Jiang Dept of Electrical Engineering and Computer Science, York University CPU Scheduling CPU scheduling is the basis of multiprogramming
More informationIntroduction to Queueing Theory
Introduction to Queueing Theory Raj Jain Washington University in Saint Louis Jain@eecs.berkeley.edu or Jain@wustl.edu A Mini-Course offered at UC Berkeley, Sept-Oct 2012 These slides and audio/video recordings
More informationIntroduction to Queueing Theory
Introduction to Queueing Theory Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 Jain@cse.wustl.edu Audio/Video recordings of this lecture are available at: http://www.cse.wustl.edu/~jain/cse567-11/
More informationCHAPTER 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 informationSeason Finale: Which one is better?
CS4310.01 Introduction to Operating System Spring 2016 Dr. Zhizhang Shen Season Finale: Which one is better? 1 Background In this lab, we will study, and compare, two processor scheduling policies via
More informationTDDB68 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 informationReal-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 informationChapter 2 Queueing Theory and Simulation
Chapter 2 Queueing Theory and Simulation Based on the slides of Dr. Dharma P. Agrawal, University of Cincinnati and Dr. Hiroyuki Ohsaki Graduate School of Information Science & Technology, Osaka University,
More informationCPU Scheduling Exercises
CPU Scheduling Exercises NOTE: All time in these exercises are in msec. Processes P 1, P 2, P 3 arrive at the same time, but enter the job queue in the order presented in the table. Time quantum = 3 msec
More informationCSE 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 informationLSN 15 Processor Scheduling
LSN 15 Processor Scheduling ECT362 Operating Systems Department of Engineering Technology LSN 15 Processor Scheduling LSN 15 FCFS/FIFO Scheduling Each process joins the Ready queue When the current process
More informationSimulation of Process Scheduling Algorithms
Simulation of Process Scheduling Algorithms Project Report Instructor: Dr. Raimund Ege Submitted by: Sonal Sood Pramod Barthwal Index 1. Introduction 2. Proposal 3. Background 3.1 What is a Process 4.
More informationIntroduction to Queueing Theory
Introduction to Queueing Theory Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 Jain@cse.wustl.edu Audio/Video recordings of this lecture are available at: 30-1 Overview Queueing Notation
More informationScheduling. Uwe R. Zimmer & Alistair Rendell The Australian National University
6 Scheduling Uwe R. Zimmer & Alistair Rendell The Australian National University References for this chapter [Bacon98] J. Bacon Concurrent Systems 1998 (2nd Edition) Addison Wesley Longman Ltd, ISBN 0-201-17767-6
More informationCPSC 531: System Modeling and Simulation. Carey Williamson Department of Computer Science University of Calgary Fall 2017
CPSC 531: System Modeling and Simulation Carey Williamson Department of Computer Science University of Calgary Fall 2017 Motivating Quote for Queueing Models Good things come to those who wait - poet/writer
More information11 The M/G/1 system with priorities
11 The M/G/1 system with priorities In this chapter we analyse queueing models with different types of customers, where one or more types of customers have priority over other types. More precisely we
More informationCHAPTER 4. Networks of queues. 1. Open networks Suppose that we have a network of queues as given in Figure 4.1. Arrivals
CHAPTER 4 Networks of queues. Open networks Suppose that we have a network of queues as given in Figure 4.. Arrivals Figure 4.. An open network can occur from outside of the network to any subset of nodes.
More informationLast class: Today: Threads. CPU Scheduling
1 Last class: Threads Today: CPU Scheduling 2 Resource Allocation In a multiprogramming system, we need to share resources among the running processes What are the types of OS resources? Question: Which
More informationCSCE 313 Introduction to Computer Systems. Instructor: Dezhen Song
CSCE 313 Introduction to Computer Systems Instructor: Dezhen Song Schedulers in the OS CPU Scheduling Structure of a CPU Scheduler Scheduling = Selection + Dispatching Criteria for scheduling Scheduling
More informationUC Santa Barbara. Operating Systems. Christopher Kruegel Department of Computer Science UC Santa Barbara
Operating Systems Christopher Kruegel Department of Computer Science http://www.cs.ucsb.edu/~chris/ Many processes to execute, but one CPU OS time-multiplexes the CPU by operating context switching Between
More informationMassachusetts Institute of Technology
.203J/6.28J/3.665J/5.073J/6.76J/ESD.26J Quiz Solutions (a)(i) Without loss of generality we can pin down X at any fixed point. X 2 is still uniformly distributed over the square. Assuming that the police
More informationCPU Scheduling. CPU Scheduler
CPU Scheduling These slides are created by Dr. Huang of George Mason University. Students registered in Dr. Huang s courses at GMU can make a single machine readable copy and print a single copy of each
More informationTDDI04, 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 informationChapter 10. Queuing Systems. D (Queuing Theory) Queuing theory is the branch of operations research concerned with waiting lines.
Chapter 10 Queuing Systems D. 10. 1. (Queuing Theory) Queuing theory is the branch of operations research concerned with waiting lines. D. 10.. (Queuing System) A ueuing system consists of 1. a user source.
More informationNATCOR: Stochastic Modelling
NATCOR: Stochastic Modelling Queueing Theory II Chris Kirkbride Management Science 2017 Overview of Today s Sessions I Introduction to Queueing Modelling II Multiclass Queueing Models III Queueing Control
More informationAn Analysis of the Preemptive Repeat Queueing Discipline
An Analysis of the Preemptive Repeat Queueing Discipline Tony Field August 3, 26 Abstract An analysis of two variants of preemptive repeat or preemptive repeat queueing discipline is presented: one in
More informationEnvironment (E) IBP IBP IBP 2 N 2 N. server. System (S) Adapter (A) ACV
The Adaptive Cross Validation Method - applied to polling schemes Anders Svensson and Johan M Karlsson Department of Communication Systems Lund Institute of Technology P. O. Box 118, 22100 Lund, Sweden
More informationState-dependent Limited Processor Sharing - Approximations and Optimal Control
State-dependent Limited Processor Sharing - Approximations and Optimal Control Varun Gupta University of Chicago Joint work with: Jiheng Zhang (HKUST) State-dependent Limited Processor Sharing Processor
More informationPBS: A Unified Priority-Based CPU Scheduler
PBS: A Unified Priority-Based CPU Scheduler Hanhua Feng Computer Science Columbia University Vishal Misra Computer Science Columbia University May, 006 Dan Rubenstein Electrical Engineering Columbia University
More informationThis article was published in an Elsevier journal. The attached copy is furnished to the author for non-commercial research and education use, including for instruction at the author s institution, sharing
More informationMulti-layered Round Robin Routing for Parallel Servers
Multi-layered Round Robin Routing for Parallel Servers Douglas G. Down Department of Computing and Software McMaster University 1280 Main Street West, Hamilton, ON L8S 4L7, Canada downd@mcmaster.ca 905-525-9140
More informationNICTA Short Course. Network Analysis. Vijay Sivaraman. Day 1 Queueing Systems and Markov Chains. Network Analysis, 2008s2 1-1
NICTA Short Course Network Analysis Vijay Sivaraman Day 1 Queueing Systems and Markov Chains Network Analysis, 2008s2 1-1 Outline Why a short course on mathematical analysis? Limited current course offering
More informationQueues and Queueing Networks
Queues and Queueing Networks Sanjay K. Bose Dept. of EEE, IITG Copyright 2015, Sanjay K. Bose 1 Introduction to Queueing Models and Queueing Analysis Copyright 2015, Sanjay K. Bose 2 Model of a Queue Arrivals
More informationSession-Based Queueing Systems
Session-Based Queueing Systems Modelling, Simulation, and Approximation Jeroen Horters Supervisor VU: Sandjai Bhulai Executive Summary Companies often offer services that require multiple steps on the
More informationIn Proceedings of the 1997 Winter Simulation Conference, S. Andradottir, K. J. Healy, D. H. Withers, and B. L. Nelson, eds.
In Proceedings of the 1997 Winter Simulation Conference, S. Andradottir, K. J. Healy, D. H. Withers, and B. L. Nelson, eds. LONG-LASTING TRANSIENT CONDITIONS IN SIMULATIONS WITH HEAVY-TAILED WORKLOADS
More informationImprovising Round Robin Process Scheduling through Dynamic Time Quantum Estimation
Improvising Round Robin Process Scheduling through Dynamic Time Quantum Estimation Mr. Nischaykumar Hegde 1, Mr. Pramod Kumar P M 2 Department of Computer Science, Vivekananda College of Engineering &
More informationJournal of Global Research in Computer Science
Volume 2, No. 2, February 2011 Journal of Global Research in Computer Science RESEARCH PAPER Available Online at www.jgrcs.info Design and Performance Evaluation of Multi Cyclic Round Robin (MCRR) Algorithm
More informationCombining Opportunistic and Size-Based Scheduling in Wireless Systems
Combining Opportunistic and Size-Based Scheduling in Wireless Systems Pasi Lassila TKK Helsinki University of Technology P.O.Box 3, FI-15 TKK, Finland Pasi.Lassila@tkk.fi Samuli Aalto TKK Helsinki University
More informationFair Operation of Multi-Server and Multi-Queue Systems
Fair Operation of Multi-Server and Multi-Queue Systems David Raz School of Computer Science Tel-Aviv University, Tel-Aviv, Israel davidraz@post.tau.ac.il Benjamin Avi-Itzhak RUTCOR, Rutgers University,
More informationExercises Stochastic Performance Modelling. Hamilton Institute, Summer 2010
Exercises Stochastic Performance Modelling Hamilton Institute, Summer Instruction Exercise Let X be a non-negative random variable with E[X ]
More informationCOMP9334 Capacity Planning for Computer Systems and Networks
COMP9334 Capacity Planning for Computer Systems and Networks Week 2: Operational Analysis and Workload Characterisation COMP9334 1 Last lecture Modelling of computer systems using Queueing Networks Open
More informationSimple Bounds on SMART Scheduling
Simple Bounds on SMART Scheduling Adam Wierman Mor Harchol-Balter November CMU-CS--99 School of Computer Science Carnegie Mellon University Pittsburgh, PA Abstract We define the class of SMART scheduling
More informationFuzzy Queues with Priority Discipline
Applied Mathematical Sciences, Vol. 4,, no., 575-58 Fuzzy Queues with Priority Discipline W. Ritha* and Lilly Robert Department of Mathematics Holy Cross College (Autonomous) Trichirapalli, Tamilnadu,
More informationImpact of size-based scheduling on flow level performance in wireless downlink data channels
Impact of size-based scheduling on flow level performance in wireless downlink data channels Samuli Aalto and Pasi Lassila TKK Helsinki University of Technology, Networking Laboratory, P.O. Box 3, FIN-25
More informationComputer Networks More general queuing systems
Computer Networks More general queuing systems Saad Mneimneh Computer Science Hunter College of CUNY New York M/G/ Introduction We now consider a queuing system where the customer service times have a
More informationSize-based Adaptive Bandwidth Allocation:
Size-based Adaptive Bandwidth Allocation: Optimizing the Average QoS for Elastic Flows Shanchieh Yang (scyang@ece.utexas.edu), Gustavo de Veciana (gustavo@ece.utexas.edu) Department of Electrical and Computer
More informationClock-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 informationIntroduction to Markov Chains, Queuing Theory, and Network Performance
Introduction to Markov Chains, Queuing Theory, and Network Performance Marceau Coupechoux Telecom ParisTech, departement Informatique et Réseaux marceau.coupechoux@telecom-paristech.fr IT.2403 Modélisation
More informationCS 550 Operating Systems Spring CPU scheduling I
1 CS 550 Operating Systems Spring 2018 CPU scheduling I Process Lifecycle Ready Process is ready to execute, but not yet executing Its waiting in the scheduling queue for the CPU scheduler to pick it up.
More informationCompletion 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 informationBounded Delay for Weighted Round Robin with Burst Crediting
Bounded Delay for Weighted Round Robin with Burst Crediting Sponsor: Sprint Kert Mezger David W. Petr Technical Report TISL-0230-08 Telecommunications and Information Sciences Laboratory Department of
More informationA lower bound on deterministic online algorithms for scheduling on related machines without preemption
Theory of Computing Systems manuscript No. (will be inserted by the editor) A lower bound on deterministic online algorithms for scheduling on related machines without preemption Tomáš Ebenlendr Jiří Sgall
More informationBuzen s algorithm. Cyclic network Extension of Jackson networks
Outline Buzen s algorithm Mean value analysis for Jackson networks Cyclic network Extension of Jackson networks BCMP network 1 Marginal Distributions based on Buzen s algorithm With Buzen s algorithm,
More informationQueueing with redundant requests: exact analysis
DOI 0.007/s34-06-9485-y Queueing with redundant requests: exact analysis Kristen Gardner Samuel Zbarsky 2 Sherwin Doroudi 3 Mor Harchol-Balter Esa Hyytiä 4 Alan Scheller-Wolf 3 Received: September 205
More informationM/G/1 and M/G/1/K systems
M/G/1 and M/G/1/K systems Dmitri A. Moltchanov dmitri.moltchanov@tut.fi http://www.cs.tut.fi/kurssit/elt-53606/ OUTLINE: Description of M/G/1 system; Methods of analysis; Residual life approach; Imbedded
More informationIntroduction to Queuing Theory. Mathematical Modelling
Queuing Theory, COMPSCI 742 S2C, 2014 p. 1/23 Introduction to Queuing Theory and Mathematical Modelling Computer Science 742 S2C, 2014 Nevil Brownlee, with acknowledgements to Peter Fenwick, Ulrich Speidel
More informationSandwich shop : a queuing net work with finite disposable resources queue and infinite resources queue
Sandwich shop : a queuing net work with finite disposable resources queue and infinite resources queue Final project for ISYE 680: Queuing systems and Applications Hongtan Sun May 5, 05 Introduction As
More informationIntro to Queueing Theory
1 Intro to Queueing Theory Little s Law M/G/1 queue Conservation Law 1/31/017 M/G/1 queue (Simon S. Lam) 1 Little s Law No assumptions applicable to any system whose arrivals and departures are observable
More informationProcess Scheduling for RTS. RTS Scheduling Approach. Cyclic Executive Approach
Process Scheduling for RTS Dr. Hugh Melvin, Dept. of IT, NUI,G RTS Scheduling Approach RTS typically control multiple parameters concurrently Eg. Flight Control System Speed, altitude, inclination etc..
More informationQ = (c) Assuming that Ricoh has been working continuously for 7 days, what is the probability that it will remain working at least 8 more days?
IEOR 4106: Introduction to Operations Research: Stochastic Models Spring 2005, Professor Whitt, Second Midterm Exam Chapters 5-6 in Ross, Thursday, March 31, 11:00am-1:00pm Open Book: but only the Ross
More informationProcess Scheduling. Process Scheduling. CPU and I/O Bursts. CPU - I/O Burst Cycle. Variations in Bursts. Histogram of CPU Burst Times
Scheduling The objective of multiprogramming is to have some process running all the time The objective of timesharing is to have the switch between processes so frequently that users can interact with
More informationSQF: A slowdown queueing fairness measure
Performance Evaluation 64 (27) 1121 1136 www.elsevier.com/locate/peva SQF: A slowdown queueing fairness measure Benjamin Avi-Itzhak a, Eli Brosh b,, Hanoch Levy c a RUTCOR, Rutgers University, New Brunswick,
More informationIntroduction to queuing theory
Introduction to queuing theory Claude Rigault ENST claude.rigault@enst.fr Introduction to Queuing theory 1 Outline The problem The number of clients in a system The client process Delay processes Loss
More informationElementary queueing system
Elementary queueing system Kendall notation Little s Law PASTA theorem Basics of M/M/1 queue M/M/1 with preemptive-resume priority M/M/1 with non-preemptive priority 1 History of queueing theory An old
More informationState-dependent and Energy-aware Control of Server Farm
State-dependent and Energy-aware Control of Server Farm Esa Hyytiä, Rhonda Righter and Samuli Aalto Aalto University, Finland UC Berkeley, USA First European Conference on Queueing Theory ECQT 2014 First
More informationQueueing Theory II. Summary. ! M/M/1 Output process. ! Networks of Queue! Method of Stages. ! General Distributions
Queueing Theory II Summary! M/M/1 Output process! Networks of Queue! Method of Stages " Erlang Distribution " Hyperexponential Distribution! General Distributions " Embedded Markov Chains M/M/1 Output
More informationContents Preface The Exponential Distribution and the Poisson Process Introduction to Renewal Theory
Contents Preface... v 1 The Exponential Distribution and the Poisson Process... 1 1.1 Introduction... 1 1.2 The Density, the Distribution, the Tail, and the Hazard Functions... 2 1.2.1 The Hazard Function
More informationDesign and Performance Evaluation of a New Proposed Shortest Remaining Burst Round Robin (SRBRR) Scheduling Algorithm
Design and Performance Evaluation of a New Proposed Shortest Remaining Burst Round Robin (SRBRR) Scheduling Algorithm Prof. Rakesh Mohanty, Prof. H. S. Behera Khusbu Patwari, Manas Ranjan Das, Monisha
More informationEquilibrium solutions in the observable M/M/1 queue with overtaking
TEL-AVIV UNIVERSITY RAYMOND AND BEVERLY SACKLER FACULTY OF EXACT SCIENCES SCHOOL OF MATHEMATICAL SCIENCES, DEPARTMENT OF STATISTICS AND OPERATION RESEARCH Equilibrium solutions in the observable M/M/ queue
More informationA FAST MATRIX-ANALYTIC APPROXIMATION FOR THE TWO CLASS GI/G/1 NON-PREEMPTIVE PRIORITY QUEUE
A FAST MATRIX-ANAYTIC APPROXIMATION FOR TE TWO CASS GI/G/ NON-PREEMPTIVE PRIORITY QUEUE Gábor orváth Department of Telecommunication Budapest University of Technology and Economics. Budapest Pf. 9., ungary
More information1.225 Transportation Flow Systems Quiz (December 17, 2001; Duration: 3 hours)
1.225 Transportation Flow Systems Quiz (December 17, 2001; Duration: 3 hours) Student Name: Alias: Instructions: 1. This exam is open-book 2. No cooperation is permitted 3. Please write down your name
More informationDynamic Control of Running Servers
Dynamic Control of Running Servers Esa Hyytiä 1,2, Douglas Down 3, Pasi Lassila 2, and Samuli Aalto 2 1 Department of Computer Science, University of Iceland, Iceland 2 Department of Communications and
More informationM/G/1/MLPS compared to M/G/1/PS
Operations Research Letters 33 (25) 519 524 Operations Research Letters www.elsevier.com/locate/orl M/G/1/MLPS compared to M/G/1/PS Samuli Aalto a,, Urtzi Ayesta b, Eeva Nyberg-Oksanen a,1 a Networking
More informationZero-Inventory Conditions For a Two-Part-Type Make-to-Stock Production System
Zero-Inventory Conditions For a Two-Part-Type Make-to-Stock Production System MichaelH.Veatch Francis de Véricourt October 9, 2002 Abstract We consider the dynamic scheduling of a two-part-type make-tostock
More informationOn the static assignment to parallel servers
On the static assignment to parallel servers Ger Koole Vrije Universiteit Faculty of Mathematics and Computer Science De Boelelaan 1081a, 1081 HV Amsterdam The Netherlands Email: koole@cs.vu.nl, Url: www.cs.vu.nl/
More informationModelling multi-path problems
1 Modelling multi-path problems Richard Gibbens Computer Laboratory, University of Cambridge 2nd Annual Conference on Information Sciences and Systems Princeton University 19 21 March 2 2 Multi-path flow
More informationLink Models for Circuit Switching
Link Models for Circuit Switching The basis of traffic engineering for telecommunication networks is the Erlang loss function. It basically allows us to determine the amount of telephone traffic that can
More informationCS 453 Operating Systems. Lecture 7 : Deadlock
CS 453 Operating Systems Lecture 7 : Deadlock 1 What is Deadlock? Every New Yorker knows what a gridlock alert is - it s one of those days when there is so much traffic that nobody can move. Everything
More informationPerformance Evaluation of Queuing Systems
Performance Evaluation of Queuing Systems Introduction to Queuing Systems System Performance Measures & Little s Law Equilibrium Solution of Birth-Death Processes Analysis of Single-Station Queuing Systems
More informationSimulation. Where real stuff starts
1 Simulation Where real stuff starts ToC 1. What is a simulation? 2. Accuracy of output 3. Random Number Generators 4. How to sample 5. Monte Carlo 6. Bootstrap 2 1. What is a simulation? 3 What is a simulation?
More informationSynchronized Queues with Deterministic Arrivals
Synchronized Queues with Deterministic Arrivals Dimitra Pinotsi and Michael A. Zazanis Department of Statistics Athens University of Economics and Business 76 Patission str., Athens 14 34, Greece Abstract
More informationAn M/M/1 Queue in Random Environment with Disasters
An M/M/1 Queue in Random Environment with Disasters Noam Paz 1 and Uri Yechiali 1,2 1 Department of Statistics and Operations Research School of Mathematical Sciences Tel Aviv University, Tel Aviv 69978,
More informationA STAFFING ALGORITHM FOR CALL CENTERS WITH SKILL-BASED ROUTING: SUPPLEMENTARY MATERIAL
A STAFFING ALGORITHM FOR CALL CENTERS WITH SKILL-BASED ROUTING: SUPPLEMENTARY MATERIAL by Rodney B. Wallace IBM and The George Washington University rodney.wallace@us.ibm.com Ward Whitt Columbia University
More information