1 / 47

Queuing Framework for Process Management Evaluation

Queuing Framework for Process Management Evaluation. Lecture 20 Klara Nahrstedt. CS241 Administrative. Read Stallings Chapter 9 No Quizzes this week, the next quiz will be on Monday 3/12 on SMP5. Content of This Lecture. Goals:

carminda
Download Presentation

Queuing Framework for Process Management Evaluation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Queuing Framework for Process Management Evaluation Lecture 20 Klara Nahrstedt

  2. CS241 Administrative • Read Stallings Chapter 9 • No Quizzes this week, the next quiz will be on Monday 3/12 on SMP5

  3. Content of This Lecture • Goals: • Introduction to Principles for Reasoning about Process Management/Scheduling • Things covered in this lecture • Introduction to Queuing Theory

  4. Process States Finite State Diagram

  5. Queuing Models and Simulation • Problem – How do we • size the ready queue, size any queue? • decide how many jobs should be accepted? • analyze scheduling algorithms? • Decide how long we should wait for a job? • Goals • Simple arithmetic (‘back of envelope calculation’) to calculate system behavior • Basis for more complex analysis • Approach to study systems too complex to produce simple mathematical model

  6. CPU Scheduler Example • Which is better: Round Robin or FIFO? • How long does A take to go thru system? • How big should be the ready queue? • Mean, Mode, Variance?

  7. Queuing Diagram for Processes Exit Start Ready Queue CPU Time Slice Event Event Queue

  8. Queuing Diagram for Processes Exit Start Ready Queue CPU Time Slice Event Event Queue

  9. Queuing Diagram for Processes Exit Start Ready Queue CPU Time Slice Event Event Queue

  10. Queuing Diagram for Processes Exit Start Ready Queue CPU Time Slice Event Event Queue

  11. Queuing Diagram for Processes Exit Start Ready Queue CPU Time Slice Event Event Queue

  12. Queuing Diagram for Processes Exit Start Ready Queue CPU Time Slice Event Event Queue

  13. Queuing Diagram for Processes Exit Start Ready Queue CPU Time Slice Event Event Queue

  14. Queuing Diagram for Processes Exit Start Ready Queue CPU Time Slice Event Event Queue

  15. Queuing Diagram for Processes Exit Start Ready Queue CPU Time Slice Event Event Queue

  16. Queuing Diagram for Processes Exit Start Ready Queue CPU Time Slice Event Event Queue

  17. Queuing Diagram for Processes Exit Start Ready Queue CPU Time Slice Event Event Queue

  18. Queuing Diagram for Processes Exit Start Ready Queue CPU Time Slice Event Event Queue

  19. Queuing Diagram for Processes Exit Start Ready Queue CPU Time Slice Event Event Queue

  20. Queuing Diagram for Processes Exit Start Ready Queue CPU Time Slice Event Event Queue

  21. Queueing Model • Random Arrivals and the Poisson Distribution • Elements of model

  22. Discussion • If a bus arrives at a bus stop every 15 minutes, how long do you have to wait at the bus stop assuming you start to wait at a random time?

  23. Discussion • What assumption have you made about the bus?

  24. Hamburger Problem • 7 Hamburgers arrive on average every time unit • 8 Hamburgers are processed by Joe on average every unit • 1) Av. time hamburger waiting to be eaten? (Do they get cold?) Ans = ???? • 2) Av number of hamburgers waiting in queue to be eaten? Ans = ???? Queue 8 7

  25. Hamburger Problem • 7 Hamburgers arrive on average every time unit • 8 Hamburgers are processed by Joe on average every unit • How long is a hamburger waiting to be eaten? (Do they get cold?) Ans = 7/8 time units • How many hamburgers are waiting in queue to be serviced? Ans = 49/8 Queue 8 7

  26. Random Events • Poisson Distribution • Each event independent of other events • Mean event rate, SD is same as mean • Exponential distribution

  27. Queuing Theory Single Server Queue ARRIVAL RATE  Server Input Queue SERVICE RATE

  28. Queueing Theory (Point of Interest) • Steady state • Poisson arrival with  constant arrival rate (customers per unit time) each arrival is independent. • P( t ) = 1- e–t 0 0.5 1 t Av λ

  29. Analysis of Queueing Behavior • Probability n customers arrive in time interval t is: • e–t tn/ n! • Assume random service times (also Poisson):  constant service rate (customers per unit time)

  30. Useful Facts From Queuing Theory • Wq= mean time a customer spends in the queue •  = arrival rate • Lq =  Wq number of customers in queue • W = mean time a customer spends in the system • L =  W ( Little's theorem) number of customers in the system • In words – average length of queue is arrival • rate times average waiting time

  31. Analysis of Single Server Queue • Server Utilization: • Time in System: • Time in Queue: • Number in Queue (Little):

  32. = 2/3 or 66% Busy Example: How busy is the server? μ=3 λ=2

  33. How long is an eater in the system? μ=3 λ=2 = 1/(3-2)= 1

  34. How long is someone in the queue? μ=3 λ=2

  35. How many people in queue? μ=3 λ=2

  36. How many people in queue? μ=2 λ=2

  37. Interesting Fact • If Arrival Rate = Service Rate, the queue length become infinitely large the longer you run the model.

  38. Until Now We Looked at Single Server, Single Queue Theory ARRIVAL RATE  Server Input Queue SERVICE RATE

  39. Poisson Arrivals Sum ARRIVAL RATE 1 Server Input Queue SERVICE RATE ARRIVAL RATE 2 =1+2

  40. Example Arrival 1 jobs/sec from Start Arrival 2 jobs/sec from Event queue Service 4 jobs/sec • Utilization? • Time in system? • Time in queue ? • Length of queue?

  41. Example Arrival 1 jobs/sec from Start Arrival 2 jobs/sec from Event queue Service 4 jobs/sec • Utilization=ρ=λ/μ=1+2/4=.75 • Time in system=1/(μ-λ)=1 • Time in queue=ρ/(μ-λ)=.75 • Length of queue=ρ*ρ/(1-ρ)=2.25

  42. Server Server As long as it’s a Poisson Distribution... SERVICE RATE1 ARRIVAL RATE  Combined=1+2 Input Queue SERVICE RATE2

  43. Question: MacDonalds Problem λ μ λ μ μ μ λ λ μ λ λ μ A) Separate Queues per Server B) Same Queue for Servers If WA is waiting time for system A, and WB is waiting time for system B, what is WA/WB? Integer answer; WA > WB ?

  44. Queuing Diagram for Processes Exit Start ARRIVAL RATE  SERVICE RATE  Time Slice SERVICE RATE1 ARRIVAL RATE 1 Event Queue

  45. Queuing Diagram for Processes Create Job CPU Ready Queue I/O request in Device Queue I/O Time Slice Expired Update Accounting Fork a Child Create Child Interrupt Occurs Wait for an Interrupt

  46. Process Next Event on Queue Put new events on queue Simulations – instead of maths • Complicated logic and conditions about events- Write program that simulates events While not end Advance Clock to Next Event Print results

  47. Summary • Simulation Models of Scheduling • Using Queuing Theory • Average response time and variance important • Simulation of Scheduling • SS: Ch 9[405-422,428-435]

More Related