CS457 - System Performance Evaluation - Winter 2008
Lecture 8 - Baby Modelling
In Lecture 5, I asked you to read this system
description. Today we will complete analysing it as an example of how to
make a system abstraction.
We do this as methodically and mechanically as possible.
1. Study goal and System description
1a. Simplifications
2. Services Provided
3. Metrics
Load Balancing
- Reponse to client requests
- Delay in redirection
- Utilization
Consistency
- Time data is stale
- catalogue item
- shopping cart
Failure
- System availability for login
- Time to complete redirections
4. List Parameters
System Parameters
These describe system propertis that might be expected to affect the
performance of the system in dimensions described by the goals of the
study
- network delay
- frequency of transmission of shopping cart content
- frequency of server failure
- downtime on server failure
- load balancing algorithm
- service capacity: how many services a server can provide per second
Workload Parameters
- arrival rate of requests of each type
Hybrid Parameters
- service (response) time, which depends on service capacity and arrival
rate of requests
5. Choose Factors
Falls under the heading of experiment design which, for now, remains
outside the scope of system abstraction.
Choosing a factor to examine requires you to choose levels at which you
want to know how the system performs.
Modelling
An extreme example of abstraction.
Two methods for modelling a system
- Stochastic
- Operational
1a. Study Goals
Get analytic results under as general a set of assumptions as possible.
Results will be in the following areas:
- Response Time
- Throughput
- Utilization
1b. System Description
- A server that processes requests
- A queue that holds requests currently being processed
- A client that makes requests.
Note. `Request', these notes, and `job', textbook, are
exactly the same thing for the purposes of this course. `Request' better
characterizes what the client does and is both a noun and a verb, which is
handy when writing and speaking; `job' better describes the actual thing that
is requested and has a narrower range of meanings in English, which can
reduce misunderstanding.
1c. Simplifications
YES!
2. Services Provided
Handling requests.
- A request is completely abstract: we are uninterested in what is
requested.
- The only specified property of a request is the consumption of a set
amount of resources during processing
3. Metrics
- Statistics of response times, such as
- average response time - R
- median
- minimum
- maximum
- percentiles
- etc.
- Statistics of throughput
- Statistics of utilization
4. Parameters
System Parameters
- Service statistics
Workload Parameters
- Arrival statistics
- Think time, which is really part of arrival statistics
- Number of users, which is really part of arrival statistics.
5. Factors
Same as parameters
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.
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.
Applying Little's Formula in the Think-time Model
1a. Goal
1b. System Description
1c. Simplifications
2. Services Provided
3. Metrics
- X - Throughput
- R - average response time
4/5. Parameters/Factors
Return to: