CPMS CH-0 Overview

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 19

Computer performance modelling and Simulation

 Course overview and Introductory

 By Biruk T.
Agenda

 Welcome!
 Course Overview
 Learning Outcomes
 Administrative Details
 Expectations
 Q&A

 Today’s Lecture Material:


— Basics of Modeling
— Computer Systems Performance Evaluation
— Simulation Modeling Example
2
Course Overview

 The purpose of this course is to learn the basics of


systems modeling, discrete-event simulation, and
computer systems performance evaluation.
 Syllabus:

3
Learning Outcomes

 Classify/describe different types of simulations.


 Solve simple problems using Monte Carlo methods.
 Develop discrete-event simulation models.
 Generate random variates using inverse transforms.
 Understand differences between transient and
steady-state behaviour of a system.
 Compute confidence intervals from simulation data.
 Conduct goodness of fit tests for input data models.
 Use basic queueing theory for simple system models.

4
Agenda

 Welcome!
 Course Overview
 Learning Outcomes
 Administrative Details
 Expectations
 Q&A

 Today’s Lecture Material:


— Basics of Modeling
— Computer Systems Performance Evaluation
— Simulation Modeling Example
5
Basics of Modeling

 What is a model?
— An abstract representation of a (real) system that captures
the essential characteristics or properties of the system
— Often requires making simplifying assumptions about how
the system actually works
 Examples:
— Model airplane; molecular model; performance model

 Modeling is an essential tool in computer system


performance evaluation (as we will see shortly)
 Note that modeling is both an ‘art’ and a ‘science’
6
Modeling: A Reality Check

 A famous quote:

“All models are wrong; some models are useful.”


- George Box, 1976

 Models are useful when they provide critical insights


into the system behaviour (e.g., its performance)
 Models are especially valuable when they are simple,
elegant, and computationally fast

7
Computer Systems Performance Evaluation

 Performance is a key consideration in the design,


procurement, and use of computer systems.
 The typical goal is to get the highest possible
performance for a given cost (e.g., dollars, energy)

 Performance evaluation is a well-defined sub-domain


of computer science that has been around for 40 yrs
 Need basic knowledge of the tools and techniques of
computer systems performance evaluation
— What are the performance requirements?
— How to compare different system alternatives?

8
Objectives of Performance Evaluation

Establish a quantitative understanding of system behaviour

This understanding should be sufficient for:


 Evaluating alternative system designs/configurations
— e.g., should our Web site run on one server or two servers?
— e.g., should Web server software be Apache, IIS, or nginx?
 Predicting system performance for a given set of inputs
— e.g., predict the mean response time of a Web server when the
number of users is increased
 Performance debugging and system tuning
— e.g., identify/remove bottlenecks, optimize configuration
— e.g., why is D2L so slow? is it the server, or the network?

9
Approaches to Performance Evaluation

Three main approaches:


1. Experimental
— Obtain measurement data by observing the events and activities
on an existing system; evaluate new algorithms or designs by
implementing and comparing them in a real system
2. Simulation modeling
— Develop a computer program that implements an abstracted
model of the physical system; manipulate the model and/or its
inputs to estimate the system performance (e.g., randomization)
3. Analytical modeling
— Represent the system by an abstract mathematical model of the
physical system (e.g., formula); manipulate parameters of the
model to obtain information about system performance
10
High Level Overview

Performance Evaluation

Performance Performance Modeling


Measurement

Analytic Modeling Simulation

11
Performance Measurement

 Measure the performance directly on a system


 Need to characterize the workload placed on the
system during measurement
 Generally provides the most valid results
 Nevertheless, not very flexible
— May be difficult (or even impossible) to vary some
workload parameters

12
Performance Modeling

 Construct a model
— An abstracted representation of a system obtained by
making assumptions about how the system works
— Captures the most salient characteristics of the system
 Reasons for using models
— Experimenting with the real system may be
 too costly
 too risky, or
 too disruptive to system operation
— System may not even exist yet (e.g., planning stage)

13
Analytic Modeling

 Mathematical methods are used to obtain solutions


to the performance measures of interest
 Examples: queueing models for computer systems or
computer communication networks
 Numerical results are easy to compute if a simple
analytic solution is available
 Useful approach when one only needs rough
estimates of performance measures
 Solutions to complex models may be difficult to
obtain

14
Simulation Modeling

 Develop a simulation program that implements the


model
 Run the simulation program and use the data
collected to estimate the performance measures of
interest (typically using randomization)
 A system can be studied at an arbitrary level of detail
 It may be costly to develop and run the simulation
program

15
Advantages of Simulation

 New policies and procedures can be explored without


disrupting the ongoing operation of the real system
 New designs can be tested without committing
resources for their acquisition
 Time can be compressed or expanded to allow for a
speed-up or slow-down of the phenomenon under
study
 Insight can be obtained about the interactions of
variables, and which ones have the most impact on
system performance
 Can obtain answers to “What if…” questions
16
Areas of Application for Simulation

 Manufacturing applications
 Financial markets
 Military applications
 Logistics and supply chain management
 Transportation modes and traffic
 Business process simulation
 Health care optimization
 Facility placement problems
 Communication networks
 And many more!
17
Simulation Example

 Hair salon (e.g., Witchcraft)


 Two stylists (one fast, one slow)
 Limited size waiting room (N chairs)
 Customers arrive at random times (no appts)
 Customers are impatient (don’t like waiting long)

 Question: How many customers do you lose by not


having enough chairs in the waiting room?

18
Agenda

 Welcome!
 Course Overview
 Learning Outcomes
 Administrative Details
 Expectations
 Q&A

 Today’s Lecture Material:


— Basics of Modeling
— Computer Systems Performance Evaluation
— Simulation Modeling Example
19

You might also like