Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part VI System-level Performance Models for the Web (Book, Chapter 8)

Slides:



Advertisements
Similar presentations
Copyright © 2005 Department of Computer Science CPSC 641 Winter PERFORMANCE EVALUATION Often in Computer Science you need to: – demonstrate that.
Advertisements

Adapted from Menascé & Almeida.1 Workload Characterization for the Web.
Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part IV Capacity Planning Methodology.
Performance Engineering Methodology Chapter 4. Performance Engineering Performance engineering analyzes the expected performance characteristics of a.
Lecture 13 – Continuous-Time Markov Chains
1 Part IV Capacity Planning Methodology © 1998 Menascé & Almeida. All Rights Reserved.
1 Part II Web Performance Modeling: basic concepts © 1998 Menascé & Almeida. All Rights Reserved.
System Performance & Scalability i206 Fall 2010 John Chuang.
1 Web Performance Modeling Chapter New Phenomena in the Internet and WWW Self-similarity - a self-similar process looks bursty across several time.
CSE 221: Probabilistic Analysis of Computer Systems Topics covered: Simple queuing models (Sec )
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
Single queue modeling. Basic definitions for performance predictions The performance of a system that gives services could be seen from two different.
Data Communication and Networks Lecture 13 Performance December 9, 2004 Joseph Conron Computer Science Department New York University
1 Queueing Theory H Plan: –Introduce basics of Queueing Theory –Define notation and terminology used –Discuss properties of queuing models –Show examples.
Performance Evaluation
1 PERFORMANCE EVALUATION H Often in Computer Science you need to: – demonstrate that a new concept, technique, or algorithm is feasible –demonstrate that.
1 Multiple class queueing networks Mean Value Analysis - Open queueing networks - Closed queueing networks.
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
Introduction to Queuing Theory. 2 Queuing theory definitions  (Kleinrock) “We study the phenomena of standing, waiting, and serving, and we call this.
1 Part VI System-level Performance Models for the Web © 1998 Menascé & Almeida. All Rights Reserved.
Computer System Lifecycle Chapter 1. Introduction Computer System users, administrators, and designers are all interested in performance evaluation. Whether.
Introduction to Queuing Theory
Copyright warning. COMP5348 Lecture 6: Predicting Performance Adapted with permission from presentations by Alan Fekete.
AN INTRODUCTION TO THE OPERATIONAL ANALYSIS OF QUEUING NETWORK MODELS Peter J. Denning, Jeffrey P. Buzen, The Operational Analysis of Queueing Network.
M EAN -V ALUE A NALYSIS Manijeh Keshtgary O VERVIEW Analysis of Open Queueing Networks Mean-Value Analysis 2.
Network Analysis A brief introduction on queues, delays, and tokens Lin Gu, Computer Networking: A Top Down Approach 6 th edition. Jim Kurose.
Introduction to Queuing Theory
Queuing models Basic definitions, assumptions, and identities Operational laws Little’s law Queuing networks and Jackson’s theorem The importance of think.
1 1 © 2003 Thomson  /South-Western Slide Slides Prepared by JOHN S. LOUCKS St. Edward’s University.
 Birth Death Processes  M/M/1 Queue  M/M/m Queue  M/M/m/B Queue with Finite Buffers  Results for other Queueing systems 2.
E-Commerce Architectures and Technologies Rob Oshana Southern Methodist University.
NETE4631:Capacity Planning (2)- Lecture 10 Suronapee Phoomvuthisarn, Ph.D. /
Chapter 3 System Performance and Models. 2 Systems and Models The concept of modeling in the study of the dynamic behavior of simple system is be able.
Introduction to Queueing Theory
TexPoint fonts used in EMF.
1 Elements of Queuing Theory The queuing model –Core components; –Notation; –Parameters and performance measures –Characteristics; Markov Process –Discrete-time.
CS433 Modeling and Simulation Lecture 12 Queueing Theory Dr. Anis Koubâa 03 May 2008 Al-Imam Mohammad Ibn Saud University.
1 Chapters 8 Overview of Queuing Analysis. Chapter 8 Overview of Queuing Analysis 2 Projected vs. Actual Response Time.
1 Challenges in Scaling E-Business Sites  Menascé and Almeida. All Rights Reserved. Daniel A. Menascé Department of Computer Science George Mason.
Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part V Workload Characterization for the Web (Book, chap. 6)
Queuing Theory and Traffic Analysis Based on Slides by Richard Martin.
Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part VIII Concluding Remarks.
State N 2.6 The M/M/1/N Queueing System: The Finite Buffer Case.
Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part V Workload Characterization for the Web.
Chapter 3 System Performance and Models Introduction A system is the part of the real world under study. Composed of a set of entities interacting.
1 Components performance modelling - Outline of queue networks - Mean Value Analisys (MVA) for open and close queue networks.
CS352 - Introduction to Queuing Theory Rutgers University.
1 Part VII Component-level Performance Models for the Web © 1998 Menascé & Almeida. All Rights Reserved.
1 1 Slide © 2011 Cengage Learning. All Rights Reserved. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Internet Applications: Performance Metrics and performance-related concepts E0397 – Lecture 2 10/8/2010.
(C) J. M. Garrido1 Objects in a Simulation Model There are several objects in a simulation model The activate objects are instances of the classes that.
Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part II System Performance Modeling: basic concepts, operational analysis (book, chap. 3)
Queuing Theory.  Queuing Theory deals with systems of the following type:  Typically we are interested in how much queuing occurs or in the delays at.
Queueing Fundamentals for Network Design Application ECE/CSC 777: Telecommunications Network Design Fall, 2013, Rudra Dutta.
Random Variables r Random variables define a real valued function over a sample space. r The value of a random variable is determined by the outcome of.
Queuing Theory Simulation & Modeling.
Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part VIII Web Performance Modeling (Book, Chapter 10)
McGraw-Hill/Irwin Copyright © 2009 by The McGraw-Hill Companies, Inc. All Rights Reserved. Chapter 18 Management of Waiting Lines.
Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part VI System-level Performance Models for the Web.
OPERATING SYSTEMS CS 3502 Fall 2017
Al-Imam Mohammad Ibn Saud University
Queueing Theory Carey Williamson Department of Computer Science
Queuing models Basic definitions, assumptions, and identities
Queuing models Basic definitions, assumptions, and identities
Computer Systems Performance Evaluation
TexPoint fonts used in EMF.
Computer Systems Performance Evaluation
Queueing Theory 2008.
Carey Williamson Department of Computer Science University of Calgary
Presentation transcript:

Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part VI System-level Performance Models for the Web (Book, Chapter 8)

Ó 1998 Menascé & Almeida. All Rights Reserved.2 Configuration Plan Investment Plan Personnel Plan Understanding the Environment Workload Characterization Workload Model Validation and Calibration Workload Forecasting Performance Prediction Cost Prediction Valid Model Cost Model Developing a Cost Model Performance Model Cost/Performance Analysis

Ó 1998 Menascé & Almeida. All Rights Reserved.3 Part VI: Learning Objectives Characterize system-level models Present State Transition Diagram (STD) technique Show solution for simple models Show general solution to STDs Show how to obtain performance metrics from the solution of STDs

Ó 1998 Menascé & Almeida. All Rights Reserved.4 System-level Models System is seen as a black box. Only its input-output characteristics are considered. Inputs: arrivals of requests Output: throughput. Throughput, X 0 (k) (requests/sec) requests in the system, k

Ó 1998 Menascé & Almeida. All Rights Reserved.5 System-level Example A Web server receives 10 requests/sec. The maximum number of requests in the server is 3. Requests that arrive and find three requests being processed are rejected.

Ó 1998 Menascé & Almeida. All Rights Reserved.6 System-level Example The measured throughput as a function of the number of requests is:

Ó 1998 Menascé & Almeida. All Rights Reserved.7 System-level Example: a few questions Q1: What is the probability that an incoming request is rejected? Q2: What is the average number of requests in execution? Q3: What is the average throughput of the Web server? Q4: What is the average time spent by an HTTP request in the Web server?

Ó 1998 Menascé & Almeida. All Rights Reserved.8 System-level Example Characterize the Web server by its state, i.e., the number k of requests in the Web server. Assumptions made: –homogeneous workload (or single class): all requests are statistically equivalent, only the number of req. counts –memoryless (markovian): how the system arrived at state k does not matter. –operational equilibrium: no. requests at beginning of interval = no. request at the end.

Ó 1998 Menascé & Almeida. All Rights Reserved.9 System-level Example req/sec 12 req/sec 15 req/sec 16 req/sec state arrivals completions of requests State Transition Diagram (STD)

Ó 1998 Menascé & Almeida. All Rights Reserved.10 System-level Example Assume we are able to find the values of: –p k = probability that (or fraction of time where) there are k requests in the Web server. Question: can we answer all the questions posed before as a function of the p k ’s?

Ó 1998 Menascé & Almeida. All Rights Reserved.11 System-level Example: a few questions Q1: What is the probability that an incoming request is rejected? A: It is the probability that an arriving HTTP request finds 3 requests already being processed. The answer is then p 3.

Ó 1998 Menascé & Almeida. All Rights Reserved.12 System-level Example: a few questions Q2: What is the average number of requests in execution? A: using the definition of average: N req = 0 x p x p x p x p 3

Ó 1998 Menascé & Almeida. All Rights Reserved.13 System-level Example: a few questions Q3: What is the average throughput of the Web server? A: again, using the definition of average: X = 0 x p x p x p x p 3 throughput value at each state

Ó 1998 Menascé & Almeida. All Rights Reserved.14 System-level Example: a few questions Q4: What is the average time spent by an HTTP request in the Web server? A: It will be a function of the average number of requests, N req, and the average throughput X. Can be computed by applying Little’s law.

Ó 1998 Menascé & Almeida. All Rights Reserved.15 System-level Example: computing the p k ’s req/sec 12 req/sec 15 req/sec 16 req/sec use the flow in = flow out principle: the flow into a set of states is equal to the flow out of this set of states in equilibrium.

Ó 1998 Menascé & Almeida. All Rights Reserved.16 System-level Example: computing the p k ’s req/sec 12 req/sec 15 req/sec 16 req/sec flow in = flow out 12 x p 1 = 10 x p 0

Ó 1998 Menascé & Almeida. All Rights Reserved.17 System-level Example: computing the p k ’s req/sec 12 req/sec 15 req/sec 16 req/sec flow in = flow out 15 x p 2 = 10 x p 1

Ó 1998 Menascé & Almeida. All Rights Reserved.18 System-level Example: computing the p k ’s req/sec 12 req/sec 15 req/sec 16 req/sec flow in = flow out 16 x p 3 = 10 x p 2

Ó 1998 Menascé & Almeida. All Rights Reserved.19 System-level Example: computing the p k ’s Putting it all together: 12 x p 1 = 10 x p 0 p 1 = 10/12 p 0 15 x p 2 = 10 x p 1 p 2 = 10/15 p 1 = 10x10 p 0 15x12 16 x p 3 = 10 x p 2 p 3 = 10/16 p 2 = 10x10x10 p 0 16x15x12

Ó 1998 Menascé & Almeida. All Rights Reserved.20 System-level Example: computing the p k ’s Putting it all together: p 1 = 10/12 p 0 ; p 2 = 10x10 p 0 ; and 15x12 p 3 = 10x10x10 p 0 16x15x12 But, the Web server has to be in one of the four states at any time. So, p 0 + p 1 + p 2 + p 3 = 1.

Ó 1998 Menascé & Almeida. All Rights Reserved.21 System-level Example: computing the p k ’s Solving for p 0 and then for the other p k ’s we get:

Ó 1998 Menascé & Almeida. All Rights Reserved.22 System-level Example: answering the questions Q1: What is the probability that an incoming request is rejected? A: It is the probability that an arriving HTTP request finds 3 requests already being processed. The answer is then p 3 = = 12.7%.

Ó 1998 Menascé & Almeida. All Rights Reserved.23 System-level Example: answering the questions Q2: What is the average number of requests in execution? A: using the definition of average: N req = 0 x x x x = requests

Ó 1998 Menascé & Almeida. All Rights Reserved.24 System-level Example: answering the questions Q3: What is the average throughput of the Web server? A: again, using the definition of average: X = 0 x x x x = requests/sec.

Ó 1998 Menascé & Almeida. All Rights Reserved.25 System-level Example: answering the questions Q4: What is the average time spent by an HTTP request in the Web server? A: It is a function of the average number of requests, N req, and the average throughput X. We need Little’s Law to answer this question.

Ó 1998 Menascé & Almeida. All Rights Reserved.26 Little’s Law PUB avg. number people in the pub = avg. departure rate from the pub X avg. time spent at the pub

Ó 1998 Menascé & Almeida. All Rights Reserved.27 Little’s Law Web server avg. number requests in the server = avg. departure rate from the server X avg. time spent at the server req/sec req?

Ó 1998 Menascé & Almeida. All Rights Reserved.28 System-level Example: answering the questions Q4: What is the average time spent by an HTTP request in the Web server? A: From Little’s Law, R = N req / X = / = sec.

Ó 1998 Menascé & Almeida. All Rights Reserved.29 Practice Drill Practice Drill Using Models for Decision Making What happens if the maximum number of allowed TCP connections changes from 3 to 10? What if the load on the server doubles? What is the impact of a threefold increase in the server’s capacity?

Ó 1998 Menascé & Almeida. All Rights Reserved.30 Types of System-level Models Population Size: –infinite –finite Service Rate: –fixed –variable Maximum Queue Size: –unlimited –limited

Ó 1998 Menascé & Almeida. All Rights Reserved.31 Types of System-level Models (population size) Infinite Population: the number of clients is very large. The rate at which requests arrive to the system does not depend on the number of requests being processed in the system. –e.g., requests arriving from the Internet to a public Web server.

Ó 1998 Menascé & Almeida. All Rights Reserved Types of System-level Models (infinite population) SERVER completed requests X 1 2 M infinite population arrival rate (requests/sec) internal requests N req Open Model

Ó 1998 Menascé & Almeida. All Rights Reserved.33 Your Web server is used for e-commerce. The company will announce a new product in the Fall and expects the number of current sales to increase by 50%. Will the server handle the load? –What is the new response time? –What is the server utilization? Practice Drill Practice Drill Using Models for Decision Making

Ó 1998 Menascé & Almeida. All Rights Reserved.34 What is the meaning of “ Will the server handle the load?” What is the new response time? What is the server utilization? Practice Drill Practice Drill Using Models for Decision Making

Ó 1998 Menascé & Almeida. All Rights Reserved.35 Types of System-level Models (population size) Finite Population: the number of clients M is limited. The rate at which requests arrive to the system depends on how many have already arrived. –e.g., requests arriving to an intranet Web server from a known number of clients within the organization (Intranet).

Ó 1998 Menascé & Almeida. All Rights Reserved.36 Types of System-level Models (finite population) SERVER completed requests X 1 2 M finite population M think time Z internal requests N req arrival rate (requests/sec) Closed Model

Ó 1998 Menascé & Almeida. All Rights Reserved.37 Company X’s intranet collects sales data from 100 stores and processes reorder data on hundreds of products electronically. The company will merge with company Y that has 150 stores. Does the existing Web site have enough capacity to handle the merged company’s demand? Practice Drill Practice Drill Using Models for Decision Making

Ó 1998 Menascé & Almeida. All Rights Reserved.38 Types of System-level Models (service rate) Fixed Service Rate: the throughput does not vary with the number of requests being processed. Throughput (requests/sec) requests in the system

Ó 1998 Menascé & Almeida. All Rights Reserved.39 Types of System-level Models (service rate) Variable Service Rate: the throughput depends on the number of requests being processed. Throughput (requests/sec) requests in the system

Ó 1998 Menascé & Almeida. All Rights Reserved.40 Types of System-level Models (maximum queue size) Unlimited Queue Size: all arriving requests are queued for service. No requests are rejected! Limited Queue Size: requests that find more than W requests waiting for service are rejected. n=W? Yes No

Ó 1998 Menascé & Almeida. All Rights Reserved.41 Types of System-level Models

Ó 1998 Menascé & Almeida. All Rights Reserved.42 System-level models: Methodology Determine proper representation for the state of system being modeled (numb. of requests in system, k) Determine set of feasible states Determine possible transitions between states, considering possible events (arrival, completion of request)

Ó 1998 Menascé & Almeida. All Rights Reserved.43 System-level models: Methodology (2) For each possible state transition, determine transition rate, looking at event that caused the transition Use flow in = flow out principle to write down equations relating values of p k ; remember that sum of all p k s is one.

Ó 1998 Menascé & Almeida. All Rights Reserved.44 System-level models: Methodology (3) Solve for p k s and use them to compute performance metrics: –utilization U –average throughput X –average number of requests N req –average response time R –fraction of requests that are lost because of queue overflow P loss

Ó 1998 Menascé & Almeida. All Rights Reserved.45 Generalized System-level Models      ..   Generalized System-level Models can be solved using the flow in = flow out principle

Ó 1998 Menascé & Almeida. All Rights Reserved.46 Generalized System-level Models

Ó 1998 Menascé & Almeida. All Rights Reserved.47 System-level Models Example A Web server receives 30 requests/sec. Its throughput function is given below. The server queue is limited to five requests. What is the server utilization, avg. throughput, avg. no. requests, avg. response time, and fraction of lost requests?

Ó 1998 Menascé & Almeida. All Rights Reserved.48 System-level Models Example (cont’d) Using the Generalized System-level model equations we get that From Little’s Law, avg. response time = avg. no requests/ avg. throughput = 1.85 / 28.4 = sec.

Ó 1998 Menascé & Almeida. All Rights Reserved.49 System-level Models Example (cont’d)

Ó 1998 Menascé & Almeida. All Rights Reserved.50 System-level Models Example (cont’d)

Ó 1998 Menascé & Almeida. All Rights Reserved.51 Practical computation tools

Ó 1998 Menascé & Almeida. All Rights Reserved.52 Practical computation tools

Ó 1998 Menascé & Almeida. All Rights Reserved.53 Practical computation tools

Ó 1998 Menascé & Almeida. All Rights Reserved.54 Practical computation tools

Ó 1998 Menascé & Almeida. All Rights Reserved.55 Practical computation tools

Ó 1998 Menascé & Almeida. All Rights Reserved.56 Practical computation tools

Ó 1998 Menascé & Almeida. All Rights Reserved.57 Practical computation tools

Ó 1998 Menascé & Almeida. All Rights Reserved.58 Part VI: Summary System-level models view a server as a black box. Only its arrival process and throughput functions are relevant. State Transition Diagrams (STDs) can be used to find the probability that k requests are in the server. Use the flow in = flow out principle. Little’s Law can be used to compute the response time from the average number of requests and from the throughput.