1 Part VI System-level Performance Models for the Web © 1998 Menascé & Almeida. All Rights Reserved.

Slides:



Advertisements
Similar presentations
Adapted from Menascé & Almeida.1 Workload Characterization for the Web.
Advertisements

Ó 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.
Web Server Software Architectures Author: Daniel A. Menascé Presenter: Noshaba Bakht.
Performance Evaluation
1 Multiple class queueing networks Mean Value Analysis - Open queueing networks - Closed queueing networks.
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
Operational Laws A large number of day-to-day problem in computer systems performance analysis can be solved by using some simple relationships that do.
Introduction to Queuing Theory. 2 Queuing theory definitions  (Kleinrock) “We study the phenomena of standing, waiting, and serving, and we call this.
Buffer or Suffer Principle
Queuing Networks. Input source Queue Service mechanism arriving customers exiting customers Structure of Single Queuing Systems Note: 1.Customers need.
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.
E-Commerce Architectures and Technologies Rob Oshana Southern Methodist University.
NETE4631:Capacity Planning (2)- Lecture 10 Suronapee Phoomvuthisarn, Ph.D. /
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.
Lecture 3: 1 Introduction to Queuing Theory More interested in long term, steady state than in startup => Arrivals = Departures Little’s Law: Mean number.
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)
Queueing Models with Multiple Classes CSCI 8710 Tuesday, November 28th Kraemer.
Queuing Theory and Traffic Analysis Based on Slides by Richard Martin.
Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part VIII Concluding Remarks.
Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part V Workload Characterization for the Web.
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.
Stevenson and Ozgur First Edition Introduction to Management Science with Spreadsheets McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies,
1 1 Slide © 2009 South-Western, a part of Cengage Learning Slides by John Loucks St. Edward’s University.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part VI System-level Performance Models for the Web (Book, Chapter 8)
Internet Applications: Performance Metrics and performance-related concepts E0397 – Lecture 2 10/8/2010.
1 1 Slide Chapter 12 Waiting Line Models n The Structure of a Waiting Line System n Queuing Systems n Queuing System Input Characteristics n Queuing System.
Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part II System Performance Modeling: basic concepts, operational analysis (book, chap. 3)
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
Birth-Death Process Birth – arrival of a customer to the system
Queueing Theory Carey Williamson Department of Computer Science
Queuing models Basic definitions, assumptions, and identities
Queuing models Basic definitions, assumptions, and identities
TexPoint fonts used in EMF.
Queuing Analysis.
Computer Systems Performance Evaluation
Carey Williamson Department of Computer Science University of Calgary
CSE 550 Computer Network Design
Presentation transcript:

1 Part VI System-level Performance Models for the Web © 1998 Menascé & Almeida. All Rights Reserved.

2 Configuration Plan Investment Plan Personnel Plan Understanding the Environment Developing a Cost Model Workload Characterization Workload Model Workload Model Validation and Calibration Performance Model Performance Model Workload Forecasting Performance Prediction Valid Model Valid Model Cost Prediction Cost Model Cost Model Cost/Performance Analysis

3 Part VI: Learning Objectives Characterize system-level models Present State Transition Diagram (STD) technique Show general solution to STDs Show how to obtain performance metrics from the solution of STDs

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 (requests/sec) requests in the system

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.

6 System-level Example The measured throughput as a function of the number of requests is:

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?

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: all requests are equivalent –memoryless: how the system arrived at system k does not matter. –operational equilibrium: no. requests at beginning of interval = no. request at the end.

9 System-level Example req/sec 12 req/sec 15 req/sec 16 req/sec state arrivals completions of requests

10 System-level Example Assume we are able to find the values of: –P k = probability that 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?

11 System-level Example: a few questions Q1: What is the probability that an incoming request is rejected? A:

12 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.

13 System-level Example: a few questions Q2: What is the average number of requests in execution? A: using the definition of average:

14 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

15 System-level Example: a few questions Q3: What is the average throughput of the Web server? A: again, using the definition of average:

16 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

17 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. More on this later...

18 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.

19 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

20 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

21 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

22 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

23 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.

24 System-level Example: computing the P k ’s Solving for P 0 and then for the other P k ’s we get:

25 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%.

26 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

27 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.

28 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.

29 Little’s Law PUB avg. number people in the pub = avg. departure rate from the pub X avg. time spent at the pub

30 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?

31 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.

32 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?

33 Types of System-level Models Population Size: –infinite –finite Service Rate: –fixed –variable Maximum Queue Size: –unlimited –limited

34 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 in the system. –e.g., requests arriving from the Internet to a public Web server.

35 Types of System-level Models (infinite population) SERVER arrival rate (requests/sec) completed requests

36 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

37 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

38 Types of System-level Models (population size) Finite Population: the number of clients 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.

39 Types of System-level Models (finite population) SERVER completed requests 1 2 M finite population

40 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

41 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

42 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

43 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

44 Types of System-level Models

45 Generalized System-level Models can be solved using the flow in = flow out principle! Generalized System-level Models      ..  

46 Generalized System-level Models

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?

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.

49 System-level Models Example (cont’d)

50 System-level Models Example (cont’d)

51 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.