CS457 - System Performance Evaluation - Winter 2010


Public Service Announcement

  1. pdf available
  2. Markovian service times

Lecture 30 - Examples of Birth & Death Processes

Birth & Death Processes

Derivation

Basic Result

dp_j(t) / dt = \lambda_j-1 p_j-1(t) + \mu_j+1 p_j+1(t) - (\lambda_j + \mu_j) p_j(t)

Steady State Solutions...

  1. pn = p0 (l_(n-1)*...*l1*l0 / m_n *...*m1)
  2. Set p0 by the condition sum_n p_n = 1.

Example 1: Infinite Queue

Assumptions:

  1. \lambda_j = \lambda
  2. \mu_j = \mu
  3. Define r = \lambda / \mu

Then

  1. pn = r^n p0
  2. p0 = 1 / (1 + r + r^2 + ...) = 1 - r.
  3. pn = (1 - r) * r^n.

Results

The mean number of jobs in the system is E[N] = r / (1 - r)

Little's law

Mean waiting time E[W]

  1. Mean waiting time is E[W] = r / (\mu - \lambda)

Mean number of jobs in the queue E[Nq]

  1. E[nq] = r^2 / (1-r)

Utilization

U = 1 - p0 = 1 - (1-r) = r = \lambda / \mu


Example 2: Finite Queue

Birth and Death Coefficients
Number of requests in the system, j 0 1 2 ... m-1 m
Probability of a birth, \lambda_j \lambda \lambda \lambda ... \lambda 0
Probability of a death, \mu_j 0 \mu \mu ... \mu \mu

Incremental solution

Results

Number of Requests

Response Time

Utilization


Example 3: Two Servers versus One Server Twice as Powerful

One Server Twice as Powerful

Service rate and time:

Number of requests

Response Time

Utilization

Two Servers with One Queue

Birth & Death Coefficients
Number of requests in the system, j 0 1 2 3 ...
Probability of a birth, \lambda_j \lambda \lambda \lambda \lambda ...
Probability of a death, \mu_j 0 \mu 2 \mu 2 \mu ...

Incremental Solution

Now normalize,

Thus, p_n = (2-r) r^n / (2+r)

Results

The mean number of jobs in the system is

Little's law

Utilization

Example 4: Finite Population of Users (Think time Model)

Think time is exponentially distributed with rate parameter \lambda.

Service time is exponentially distributed with rate parameter \mu

Birth and Death Coefficients
State of system (j) 0 1 2 n N-1 N
Probability of birth (\lambda) N N-1 N-2 ... N-n ... 1 0 in terms of \lambda
Probability of death (\mu) 0 1 1 1 1 1 in terms of \mu

We have to understand this somehow.

  1. N = 1
  2. N = 2

Now, we would like to find the response time

Little's Law: E[R] = N/X - Z


Example 4: Deterministic Service Times

Assume that the system is stable.

Consider the system at time t

If N > 0 then there is a request being served


Return to: