Queuing Networks. - Outline of queuing networks. - Mean Value Analisys (MVA) for open and closed queuing networks

Similar documents
COMP9334: Capacity Planning of Computer Systems and Networks

CSM: Operational Analysis

Operational Laws Raj Jain

Analysis of Software Artifacts

Convolution Algorithm

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

Operational Laws 33-1

Análise e Modelagem de Desempenho de Sistemas de Computação

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

CHAPTER 4. Networks of queues. 1. Open networks Suppose that we have a network of queues as given in Figure 4.1. Arrivals

COMP9334 Capacity Planning for Computer Systems and Networks

Operational Laws. Operational Laws. Overview. Operational Quantities

de Computação ``E business: banking services Virgilio A. F. Almeida

Case Study IV: An E-Business Service

Homework 1 - SOLUTION

Prof. Daniel A. Menascé Department of Computer Science George Mason University

Performance Evaluation of Queuing Systems

Networking = Plumbing. Queueing Analysis: I. Last Lecture. Lecture Outline. Jeremiah Deng. 29 July 2013

Buzen s algorithm. Cyclic network Extension of Jackson networks

λ λ λ In-class problems

Queueing Theory I Summary! Little s Law! Queueing System Notation! Stationary Analysis of Elementary Queueing Systems " M/M/1 " M/M/m " M/M/1/K "

A POPULATION-MIX DRIVEN APPROXIMATION FOR QUEUEING NETWORKS WITH FINITE CAPACITY REGIONS

Little s result. T = average sojourn time (time spent) in the system N = average number of customers in the system. Little s result says that

One billion+ terminals in voice network alone

Computer Systems Modelling

Session-Based Queueing Systems

Parijat Dube Jian Tan Li Zhang. IBM T. J. Watson Research Center 19, Skyline Drive Hawthorne NY 10532, USA

Queuing Networks: Burke s Theorem, Kleinrock s Approximation, and Jackson s Theorem. Wade Trappe

Module 5: CPU Scheduling

Introduction to queuing theory

Readings: Finish Section 5.2

Introduction to Markov Chains, Queuing Theory, and Network Performance

Queuing Theory. Using the Math. Management Science

Queueing Networks G. Rubino INRIA / IRISA, Rennes, France

QUEUING MODELS AND MARKOV PROCESSES

15 Closed production networks

CPU Scheduling. CPU Scheduler

Link Models for Packet Switching

Modelling data networks stochastic processes and Markov chains

Markov decision processes with threshold-based piecewise-linear optimal policies

CS418 Operating Systems

Statistics 150: Spring 2007

CPSC 531: System Modeling and Simulation. Carey Williamson Department of Computer Science University of Calgary Fall 2017

Note special lecture series by Emmanuel Candes on compressed sensing Monday and Tuesday 4-5 PM (room information on rpinfo)

MULTIPLE CHOICE QUESTIONS DECISION SCIENCE

A Hysteresis-Based Energy-Saving Mechanism for Data Centers Christian Schwartz, Rastin Pries, Phuoc Tran-Gia www3.informatik.uni-wuerzburg.

MAT SYS 5120 (Winter 2012) Assignment 5 (not to be submitted) There are 4 questions.

CHAPTER 3. CAPACITY OF SIGNALIZED INTERSECTIONS

HITTING TIME IN AN ERLANG LOSS SYSTEM

CPU Scheduling Exercises

Little s Law assumptions: But I still wanna use it! The Goldilocks solution to sizing the system for non-steady-state dynamics

Slides 9: Queuing Models

How to deal with uncertainties and dynamicity?

A Study on Performance Analysis of Queuing System with Multiple Heterogeneous Servers

15 Closed production networks

Queueing Systems: Lecture 3. Amedeo R. Odoni October 18, Announcements

Modelling data networks stochastic processes and Markov chains

Lecture 7: Simulation of Markov Processes. Pasi Lassila Department of Communications and Networking

Dynamic resource sharing

Bounded Delay for Weighted Round Robin with Burst Crediting

BIRTH DEATH PROCESSES AND QUEUEING SYSTEMS

1.225 Transportation Flow Systems Quiz (December 17, 2001; Duration: 3 hours)

Dynamic Service Placement in Geographically Distributed Clouds

Discrete-event simulations

T. Liggett Mathematics 171 Final Exam June 8, 2011

QUEUING SYSTEM. Yetunde Folajimi, PhD

Season Finale: Which one is better?

Sandwich shop : a queuing net work with finite disposable resources queue and infinite resources queue

A Quantitative View: Delay, Throughput, Loss

Operations Research II, IEOR161 University of California, Berkeley Spring 2007 Final Exam. Name: Student ID:

Chapter 6: CPU Scheduling

Irreducibility. Irreducible. every state can be reached from every other state For any i,j, exist an m 0, such that. Absorbing state: p jj =1

Homework 4 due on Thursday, December 15 at 5 PM (hard deadline).

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

Modelling Complex Queuing Situations with Markov Processes

Computer Networks Fairness

Experiments with Measuring Time in PRISM 4.0

Stability of the two queue system

Queueing systems. Renato Lo Cigno. Simulation and Performance Evaluation Queueing systems - Renato Lo Cigno 1

Solutions to COMP9334 Week 8 Sample Problems

Introduction to Queueing Theory

CPU scheduling. CPU Scheduling

Introduction to Queuing Networks Solutions to Problem Sheet 3

Exercises Stochastic Performance Modelling. Hamilton Institute, Summer 2010

Chapter 3: Markov Processes First hitting times

Matthew Zyskowski 1 Quanyan Zhu 2

Chapter 5. Continuous-Time Markov Chains. Prof. Shun-Ren Yang Department of Computer Science, National Tsing Hua University, Taiwan

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

Queuing Theory and Stochas St t ochas ic Service Syste y ms Li Xia

Capacity management for packet-switched networks with heterogeneous sources. Linda de Jonge. Master Thesis July 29, 2009.

CS 798: Homework Assignment 3 (Queueing Theory)

Scheduling. Uwe R. Zimmer & Alistair Rendell The Australian National University

Ways to study a system System

Better Simulation Metamodeling: The Why, What and How of Stochastic Kriging

PBW 654 Applied Statistics - I Urban Operations Research

EP2200 Course Project 2017 Project II - Mobile Computation Offloading

Proportional Share Resource Allocation Outline. Proportional Share Resource Allocation Concept

Chapter 6 Queueing Models. Banks, Carson, Nelson & Nicol Discrete-Event System Simulation

CHAPTER 5 - PROCESS SCHEDULING

Last class: Today: Threads. CPU Scheduling

Transcription:

Queuing Networks - Outline of queuing networks - Mean Value Analisys (MVA) for open and closed queuing networks 1

incoming requests Open queuing networks DISK CPU CD outgoing requests Closed queuing networks (finite number of users) DISK M clients CPU CD 2

Kind of resources in a queuing network Load independent S(n) R(n) n Load dependent S(n) R(n) n Delay S(n) R(n) n 3

Definitions K: number of queues X 0 : network average throughput. If open network in a stationary condition X 0 = V i : average number of visits a generic request makes to i server from its generation to its service time (request goes out from the system if open network) S i : average request service time at the server i W i : average request waiting time in the queue i R i : average request response time in the queue i R i = S i + W i 4

Definitions X i : throughput for the i-th queue X i = X 0 V i R i: average request residence time in the queue i from its creation to its service completion time (request goes out from the system if open network) R i = V i R i D i : request service demand to a server in a queue i from its creation to its service completion time (request goes out from the system if open network) D i = V i S i 5

Q i : total time a request spends waiting in the queue i from its creation to its service time (request goes out from the system if open network) Q i = V i W i ------------------------------- R i = V i R i =V i (W i + S i ) = W i V i + S i V i = Q i + D i ------------------------------- R 0 : total average request response time ((from the whole system) R 0 = k i=1 R i n i : average number of requests waiting or in service at the queue i N: average number of requests in the system N = k i=1 n i 6

Open queuing networks incoming requests CPU DISK TAPE outgoing requests 7

Open networks (Single Class) Equations: Arrival theorem (for open networks): the average number of requests in a queue i that an incoming request find in the same queue (n a i), is equal to the average number of requests in the queue i (n i ). R i (n) = S i + W i (n) = S i + n i S i Using Little s Law (n i = X i R i ) and U i = X i S i : R i = S i _ (1-U i ) given that R i = S i (1 + n i ) = S i + S i X i R i = S i + U i R i R i (1- U i ) = S i 8

Open networks (Single Class) Equations: Then: R i = V i R i = D i _ (1-U i ) besides: n i = U i _ (1-U i ) because n i = X i R i R i = S i / (1- U i ) U i = X i S i 9

Calculation of the greatest : Given: Open networks (Single Class) In an open network the average frequency of users incoming into the network is fixed. For too much big the network will become unstable, we are then interested in the greatest value of that we can apply to the network. U i = X i S i = V i S i then: = U i / D i because D i = V i S i U i = 1 is the greatest utilization factor of a queue (i.e.= i), then we can calculate the greatest that doesn t make unstable the system as: 1 _ max k i=1 D i 10

DB Server (example 9.1) CPU DISK1 DISK2 =10.800 requests per hour = 3 requests per sec = X 0 D CPU = 0,2 sec V DISK1 = 5 V DISK2 = 3 S DISK1 = S DISK2 = 15 msec Service demand at CPU D DISK1 = V DISK1 * S DISK1 = 5 * 15 msec = 75 msec Service demand at disk 1 D DISK2 = V DISK2 * S DISK2 = 3 * 15 msec = 45 msec Service demand at disk 2 11

DB Server (example 1). Service Demand Law CPU DISK1 DISK2 U CPU = D CPU * X 0 = 0,2 sec/req * 3 req/sec = 0,6 CPU utilization U D1 = D DISK1 * X 0 = = 0,225 Disk1 utilization U D2 = = 0,135 Disk2 utilization Residence time R CPU = D CPU / (1- U CPU ) = 0,5 sec R D1 = D DISK1 / (1- U DISK1 ) = 0,097 sec R D2 = D DISK2 / (1- U DISK2 ) = 0,052 sec 12

Total response time R 0 = R CPU + R D1 + R D2 = 0,649 sec Average number of requests at each queue n CPU = U CPU / (1- U CPU ) = 0,6 / (1-0,6) = 1,5 n DISK1 = = 0,29 n DISK2 = = 0,16 Total number of requests at the server N = n CPU + n DISK2 + n DISK2 = 1,95 requests RMaximum arrival rate = 1 _ = 1 _ = 5 req /sec max k i=1 D i max (0,2; 0,075; 0,045) 13

Closed queue network (finite number of users) DISK M clients CPU TAPE 14

Closed networks (Mean Value Analysis) Allows calculating the performance indeces (average response time, throughput, average queue lenght, etc ) for a closed network Iterative method based on the consideration that a queuing network results can be calculated from the same network results with a population reduced by one unit. Useful also for hybrid queuing networks Definitions. X 0 : average queuing network throughput.. V i : average number of visits for a request at a queue i.. S i : average service time for a request on the server i.. R i : average response time for a request at the queue i (service+waiting time) 15

Closed networks (Mean Value Analysis) Definitions. R i: total average stay time for a request at the queue i considering all its visits at the queue. Equal to V i R i. D i : total average service time for a request at the queue i considering all its visits at the queue. Equal to V i S i. R 0 : average response time of the queuing network. Equal to the sum of the R i. n ia : average number of the requests found by a request incoming in the queue. Forced Flow Law Then we have: X i = X 0 V i 16

Mean Value Analysis (Single class) Equations: R i (n) = S i + W i (n) = S i + n ia (n) S i = S i (1+ n ia (n) ) Arrival Theorem: the average number of requests (n ia ) in a queue i that an incoming request finds in the same queue is equal to the average number of requests in the queue i when n-1 requests are in the queuing network (n i (n-1) that is n minus the incoming request that wants the service on the i-th queue) in other words: n ia (n) = n i (n-1) (i.e n i is function of n-1) then: R i = S i (1+n i (n-1)) and multiplying both members for V i R i = D i (1+n i (n-1)) 17

Mean Value Analysis (Single class) Equations: Applying Little s Law to the whole queuing network system (n=x 0 R 0 ), we have: X 0 = n / R 0 (n) = n / K r=1 R i(n) Applying Little s Law and Forced Flow Law: n i (n) = X i (n) R i (n) = X 0 (n) V i R i (n) = X 0 (n) R i(n) 18

Mean Value Analysis (Single class) Three equations: Residence Time equation R i (n)= D i [1+n i (n-1)] Throughput equation X 0 (n)= n / K r=1 R i(n) Queue lenght equation n i (n) = X 0 (n) R i(n) 19

Iterative procedure: Mean Value Analysis (Single class) 1. We know that n i (n) = 0 for n=0: if no users is in the queuing network, then no users (requests) will be in every single queue. 2. Given n i (0) it s possible to evaluate all R i(1) 3. Given all R i(1) it s possible to evaluate all n i (1) and X 0 (1) 4. Given all n i (1) it s possible to evaluate all R i(2) 5. The procedure continues until all n i (n), R i(n) and X 0 (n) are found, where n is the total number of users (requests) inside the network. 20

DB Server (example 9.3) Requests from 50 clients Every request needs 5 record read from (visit to) a disk Average read time for a record (visit) = 9 msec Every request to DB needs 15 msec CPU D CPU = S CPU = 15 msec D DISK = S DISK * V DISK = 9 * 5 = 45 msec CPU service demand Disk service demand 21

Using MVA Equations DB Server (example 2) n = 0; Number of concurrent requests R CPU = 0; Residence time for CPU R DISK = 0; Residence time for disk R 0 = 0; Average response time X 0 = 0; Throughput n CPU = 0; Queue lenght at CPU n DISK = 0 Queue lenght at disk n = 1; R CPU = D CPU (1+ n CPU (0)) = D CPU = 15 msec; R DISK = D DISK (1+ n DISK (0)) = D DISK = 45 msec; R 0 = R CPU + R DISK = 60 msec; X 0 = n/ R 0 = 0,0167 tx/msec n CPU = X 0 * R CPU = 0,250 n DISK = X 0 * R DISK = 0,750 22

DB Server (example 2) n = 1; R CPU = D CPU (1+ n CPU (0)) = D CPU = 15 msec; R DISK = D DISK (1+ n DISK (0)) = D DISK = 45 msec; R 0 = R CPU + R DISK = 60 msec; X 0 = 1 / R 0 = 0,0167 tx/msec n CPU = X 0 * R CPU = 0,250 n DISK = 0,750 n = 2; R CPU = D CPU (1 + n CPU (1)) = 15 * 1,25 = 18,75 msec; R DISK = D DISK (1 + n DISK (1)) = 45 * 1,750 = 78,75 msec; R 0 = R CPU + R DISK = 97,5 msec; X 0 = 2 / R 0 = 0,0205 tx/msec n CPU = X 0 * R CPU = 0,38 n DISK = X 0 * R DISK = 1,62 23

The related Markov process 50/Z 49/Z 1/Z 0 1 2... 49 50 X 0 (1) X 0 (2) X 0 (50) 24

Closed networks (Single Class) - Bounds Bottleneck identification (1/3) Usually the queuing network throughput will reach saturation if requests increase inside the system; we are then interested in finding the component in the system that causes saturation. in open networks: 1 _ max k i=1 D i and replacing with X 0 (n): X 0 (n) 1 _ max k i=1 D i 25

Closed networks (Single Class) - Bounds Bottleneck identification (2/3) from throughput equation of MVA, remembering that R i (n) = D i [1 + n i (n-1)] R i D i for every queue i, then we have (from Little s formula): X 0 (n) = n n _ K r=1 R i K r=1 D i 26

Closed networks (Single Class) - Bounds Bottleneck identification (3/3) Combining the preceding two equations we obtain: X 0 (n) min n _, 1 _ K r=1 D i max k i=1 D i For little n the throughput will increase at the most in a linear way with n, then becomes flat around the value 1/ max k i=1 D i X 0 n 27

Average response time (1/2) Closed networks (Single Class) - Bounds When throughput reaches its greatest value (that is for n big) the average response time is equivalent to: R 0 (n) n _ max throughput Then for n big the response time increases in a linear way with n: R 0 (n) n max k i=1 D i On the contrary, for small values of n (n near to 1) the average response time will be: R 0 (n) = K r=1 D i considering that all waiting times are null. 28

Closed networks (Single Class) - Bounds Average response time (2/2) We can establish a lower bound on average response time equal to: R 0 (n) max K i=1 D i, n max k i=1 D i 29

DB Server (Example 9.4) New scenarios with regard to previous example: a. index variation in DB (# of disk access equal to 2,5 (before was 5)) b. 60% faster Disk (average service time = 5,63 msec) c. faster CPU (service demand = 7,5 msec) Scenario Service demand Service demand D i 1/ maxd i Bottleneck D CPU D DISK a 15 2,5 * 9 = 22,5 37,5 0,044 disk b 15 5*5,63 = 28,15 43,15 0,036 disk c 15/2 = 7,5 45 52,5 0,022 disk a+b 15 2,5*5,63 = 14,08 29,08 0,067 CPU a+c 15/2 = 7,5 2,5 * 9 = 22,5 30,0 0,044 disk 30