CS457 - System Performance Evaluation - Winter 2008
Questions and Comments
Lecture 9 - Applying Little's Law
But before we go on to talk about measuring we will show two simple
applications of Little's little formula.
Little's Law (or Formula)
- Picture of arrival and departure generating system load diagram
- Area under system load is total response time: nR
- Average load, Q, times time interval, L is total response time: QL =
nR
- n/L = X = throughput = \lambda = interarrival time.
- Therefore Q = XR = \lambda R
Stability
Little's formula holds only if the system is stable, which is defined by U
< 0
6. Workload Models
- Infinite population of clients
- Finite population of clients - think-time model
- client works (called thinking), then server works, then client
works (called thinking), etc.
- I would call this workload model a blocking model.
Applying Little's Formula in the Think-time Model
1a. Goal
- To understand Figure 3.3 in the textbook. (p. 38)
- Solid curve real, dashed curve idealized
Top figure
- How throughput varies with load
- Linear region
- Saturation region
- Fall-off region: not in idealization
Bottom figure
- How response time varies with load
- Constant region
- Linear region
- Goes to infinity at the end of the linear region: system is
becoming unstable, only hand-waving in idealization
1b. System Description
- Finite population of clients in the think-time (blocking) model.
1c. Simplifications
2. Services Provided
3. Metrics
- X - Throughput
- R - average response time
4/5. Parameters/Factors
- Interarrival time
The Model Equations
As usual,
- Interval of time, L
- Number of arrivals, n
New
- Number of users, N
- Each user thinks before submitting the next request: average think
time, Z.
- Number of users thinking, nt <= N; number of users waiting on
systems, ns <= N. Because both are bounded the system is stable
- Average number of users in thinking, Nt. Average number of users
waiting, Ns. Ns + Nt = N.
- NS is the load
Apply Little's formula
- Little's formula on the system: XR = Ns
- Little's formula on the users: XZ = Nt
- Therefore, X(R + Z) = N, which gives R = N/X - Z
Utilization
- Divide response time, ri, into queueing time, wi, and service time si:
ri = wi + si.
- S is average serice time. S = (1/n) \sum si.
- S <= R
- The, by definition, utilization, U, is U = (1/L) \sum si = (nS) / L =
XS = X \lambda.
Observations
Response Time
- R >= S, equality when U < 1.
- R = N/X - Z = (NS)/U - Z >= NS - Z, equality when U = 1
Throughput
- U = XS <= 1, which implies X = U/S <= 1/S.
- X(R + Z) = N, which implies X = N / (R + Z) >= N / (S + Z).
Now draw some pictures to see what's actually going on.
Return to: