Lecture 12: Storage Systems Performance

Slides:



Advertisements
Similar presentations
Introduction to Queuing Theory
Advertisements

Lecture 36: Chapter 6 Today’s topic –RAID 1. RAID Redundant Array of Inexpensive (Independent) Disks –Use multiple smaller disks (c.f. one large disk)
Lecture 12: Storage Systems Performance Kai Bu
1 Part II Web Performance Modeling: basic concepts © 1998 Menascé & Almeida. All Rights Reserved.
CS CS 5150 Software Engineering Lecture 19 Performance.
OS2-1 Chapter 2 Computer System Structures. OS2-2 Outlines Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection.
Reliability Week 11 - Lecture 2. What do we mean by reliability? Correctness – system/application does what it has to do correctly. Availability – Be.
CSE 221: Probabilistic Analysis of Computer Systems Topics covered: Simple queuing models (Sec )
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
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 Lecture 24: Interconnection Networks Topics: communication latency, centralized and decentralized switches (Sections 8.1 – 8.5)
Little’s Theorem Examples Courtesy of: Dr. Abdul Waheed (previous instructor at COE)
1 PERFORMANCE EVALUATION H Often in Computer Science you need to: – demonstrate that a new concept, technique, or algorithm is feasible –demonstrate that.
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.
Using Standard Industry Benchmarks Chapter 7 CSE807.
Research on cloud computing application in the peer-to-peer based video-on-demand systems Speaker : 吳靖緯 MA0G rd International Workshop.
Computer System Architectures Computer System Software
AN INTRODUCTION TO THE OPERATIONAL ANALYSIS OF QUEUING NETWORK MODELS Peter J. Denning, Jeffrey P. Buzen, The Operational Analysis of Queueing Network.
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.
CS433 Modeling and Simulation Lecture 13 Queueing Theory Dr. Anis Koubâa 03 May 2009 Al-Imam Mohammad Ibn Saud University.
NETE4631:Capacity Planning (2)- Lecture 10 Suronapee Phoomvuthisarn, Ph.D. /
Introduction to Queueing Theory
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.
A Level Computing for AQA Teacher’s Resource CD-ROM 42 CHAPTER: Operating systems Nick Sims Basic functions Classifying operating systems.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems with Multi-programming Chapter 4.
CS352 - Introduction to Queuing Theory Rutgers University.
CSCI1600: Embedded and Real Time Software Lecture 19: Queuing Theory Steven Reiss, Fall 2015.
NETE4631: Network Information System Capacity Planning (2) Suronapee Phoomvuthisarn, Ph.D. /
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.
(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)
Hands-On Microsoft Windows Server 2008 Chapter 7 Configuring and Managing Data Storage.
Queuing Theory Simulation & Modeling.
Ó 1998 Menascé & Almeida. All Rights Reserved.1 Part VI System-level Performance Models for the Web.
OPERATING SYSTEMS CS 3502 Fall 2017
Lecture 2: Performance Evaluation
Chapter 2: Computer-System Structures(Hardware)
Chapter 2: Computer-System Structures
Lecture 1: Operating System Services
Chapter 2 Memory and process management
Al-Imam Mohammad Ibn Saud University
Data Dissemination and Management (2) Lecture 10
Queuing Theory Queuing Theory.
B.Ramamurthy Appendix A
Capacity Analysis, cont. Realistic Server Performance
Queueing Theory Carey Williamson Department of Computer Science
Queuing models Basic definitions, assumptions, and identities
System Performance: Queuing
Queuing models Basic definitions, assumptions, and identities
Computer Systems Performance Evaluation
Single server model Queue Server I/O Controller And device Arrivals.
Storage Systems Performance
Lecture 18 Syed Mansoor Sarwar
Computer Systems Performance Evaluation
LO2 – Understand Computer Software
Carey Williamson Department of Computer Science University of Calgary
CS 704 Advanced Computer Architecture
Chapter 2: Computer-System Structures
Chapter 2: Computer-System Structures
Data Dissemination and Management (2) Lecture 10
Presentation transcript:

Lecture 12: Storage Systems Performance Kai Bu kaibu@zju.edu.cn http://list.zju.edu.cn/kaibu/comparch2016fall

Lab 3 Report due December 16 Lab 4 Demo due Assignment 3 December 29 each lab group, 10 min talk: instruction, pipeline, cache, virtual memory, storage, multiprocessor

Preview I/O Performance Queuing Theory quantify /calculate The tool we can use to quantify I/O performance is queuing theory.

Appendix D.4–D.5 It can be found in Appendix D.

I/O Performance Queuing Theory Before introducing queuing theory, let’s first see in what aspects we expect good I/O performance.

Unique Measures Diversity which I/O devices can connect to the computer system? Capacity how many I/O devices can connect to a computer system? First, we expect high diversity from a good I/O system. By diversity, it means that which I/O devices can connect to the computer system. Second, we expect high capacity. By capacity, it refers to how many I/O devices can connect to a computer system.

Producer-Server Model producer creates tasks to be performed and places them in a buffer; server takes tasks from the FIFO buffer and performs them; For ease of performance analysis, we usually model an I/O system as a producer-server model. Producer creates tasks and enqueues them in a buffer; Tasks we are mentioning here refer to I/O requests. Then server takes tasks from the buffer in a first in first out way and performs them.

Metrics Response time / Latency the time a task from the moment it is placed in the buffer until the server finishes the task Throughput / Bandwidth the average number of tasks completed by the server over a time period Based on producer-server model, we have two metrics to quantify I/O performance, they are response time and throughput.

Throughput vs Response Time Competing demands Highest possible throughput requires server never be idle, thus the buffer should never be empty Response time counts time spent in the buffer, so an empty buffer shrinks it

Throughput vs Response Time

Choosing Response Time Transaction an interaction between user and comp Transaction Time consists of Entry time: the time for the user to enter the command System response time: the time between command entered and complete response displayed Think time: the time from response reception to user entering next cmd From users’ perspective

Choosing Response Time reduce response time from 1 s to 0.3 s

Choosing Response Time More transaction time reduction than just the response time reduction

Choosing Response Time People need less time to think when given a faster response

Response time restrictions for I/O benchmarks

TPC Conducted by Transaction-Processing Council OLTP for online transaction processing I/O rate: the number of disk accesses per second; instead of data rate (bytes of data per second)

TPC

TPC-C Configuration use a database to simulate an order-entry environment of a wholesale supplier Include entering and delivering orders, recording payments, checking the status of orders, and monitoring the level of stock at the warehouses Run five concurrent transactions of varying complexity Includes nine tables with a scalable range of records and customers

TPC-C Metrics tmpC transactions per minute System price hardware software three years of maintenance support

TPC: Initiative/Unique Characteristics Price is included with the benchmark results The dataset generally must scale in size as the throughput increases The benchmark results are audited Throughput is performance metric, but response times are limited An independent organization maintains the benchmarks

SPEC Benchmarks Best known for its characterization of processor performances Has created benchmarks for also file servers, mail servers, and Web servers SFS, SPECMail, SPECWeb

SPEC File Server Benchmark SFS a synthetic benchmark agreed by seven companies; evaluate systems running the Sun Microsystems network file sys (NFS); SFS 3.0 / SPEC SFS97_R1 to include support for NFS version 3

SFS Scale the amount of data stored according to the reported throughput Also limits the average response time

SPECMail Evaluate performance of mail servers at an Internet service provider SPECMail 2001 based on standard Internet protocols SMTP and POP3; measures throughput and user response time while scaling the number of users from 10,000 to 1,000,000 Ten thousands to one million

SPECWeb Evaluate the performance of World Wide Web servers Measure number of simultaneous user sessions SPECWeb2005 simulates accesses to a Web service provider; server supports home pages for several organizations; three workloads: Banking (HTTPs), E-commerce (HTTP and HTTPs), and Support (HTTP)

Dependability Benchmark Examples TPC-C The benchmarked system must be able to handle a single disk failure Measures submitters run some RAID organization in their storage system

Dependability Benchmark Examples Effectiveness of fault tolerance Availability: measured by examining the variations in system quality-of-service metrics over time as faults are injected into the system For a Web server performance: requests satisfied per second degree of fault tolerance: the number of faults tolerated by the storage system, network connection topology, and so forth

Dependability Benchmark Examples Effectiveness of fault tolerance SPECWeb99 Single fault injection e.g., write error in disk sector Compares software RAID implementations provided by Linux, Solaris, and Windows 2000 Server

SPECWeb99 fast reconstruction decreases app performance reconstruction steals I/O resources from running apps

SPECWeb99 Linux and Solaris initiate automatic reconstruction of the RAID volume onto a hot spare when an active disk is taken out of service due to a failure Windows’s RAID reconstruction must be initiated manually

SPECWeb99 Managing transient faults Linux: paranoid shut down a disk in controlled manner at the first error, rather than wait to see if the error is transient; Windows and Solaris: forgiving ignore most transient faults with the expectation that they will not recur

I/O Performance Queuing Theory

Queuing Theory Give a set of simple theorems that will help calculate response time and throughput of an entire I/O system

Queuing Theory Because of the probabilistic nature of I/O events and because of sharing of I/O devices A little more work and much more accurate than best-case analysis, but much less work than full-scale simulation

Black Box Model I/O Device Processor makes I/O requests that arrive at the I/O device, requests depart when the I/O device fulfills them

Flow-balanced State If the system is in steady state, I/O Device If the system is in steady state, then the number of tasks entering the system must equal the number of tasks leaving the system This flow-balanced state is necessary but not sufficient for steady state

Steady State The system has reached steady state I/O Device The system has reached steady state if the system has been observed for a sufficiently long time and mean waiting times stabilize

Little’s Law Assumptions multiple independent I/O requests in equilibrium: input rate = output rate; a steady supply of tasks independent for how long they wait for service;

Little’s Law Mean number of tasks in system = Arrival rate x Mean response time

Little’s Law Mean number of tasks in system = Arrival rate x Mean response time applies to any system in equilibrium nothing inside the black box creating new tasks or destroying them I/O Device

Single-Server Model Queue / Waiting line the area where the tasks accumulate, waiting to be serviced Server the device performing the requested service is called the server

Single-Server Model Timeserver average time to service a task average service rate: 1/Timeserver Timequeue average time per task in the queue Timesystem average time/task in the system, or the response time; Timequeue + Timeserver

Single-Server Model Arrival rate average # of arriving tasks per second Lengthserver average # of tasks in service Lengthqueue average length of queue Lengthsystem average # of tasks in system, Lengthserver + Lengthqueue

Server Utilization / traffic intensity the mean number of tasks being serviced divided by the service rate Service rate = 1/Timeserver =Arrival rate x Timeserver (little’s law again)

Server Utilization Example an I/O sys with a single disk gets on average 50 I/O requests per sec; 10 ms on avg to service an I/O request; server utilization =arrival rate x timeserver =50 x 0.01 = 0.5 = 1/2 Could handle 100 tasks/sec, but only 50

Queue Discipline How the queue delivers tasks to server FIFO: first in, first out Timequeue =Lengthqueue x Timeserver + Mean time to complete the task being serviced when new task arrives if server is busy

Queue with exponential/Poisson distribution of events/requests

Lengthqueue Example an I/O sys with a single disk gets on average 50 I/O requests per sec; 10 ms on avg to service an I/O request; Lengthqueue =

M/M/1 Queue M: Markov exponentially random request arrival; exponentially random service time 1 single server

M/M/1 Queue assumptions The system is in equilibrium Interarrival times (times between two successive requests arriving) are exponentionally distributed Infinite population model: unlimited number of sources of requests Server starts on the next job immediately after finishing prior one FIFO queue with unlimited length One server only

M/M/1 Queue Example a processor sends 40 disk I/Os per sec; exponentially distributed requests; avg service time of an older disk is 20ms; Q: 1. avg server utilization? 2. avg time spent in the queue? 3. avg response time (queuing+serv)?

M/M/1 Queue Example 1 a processor sends 40 disk I/Os per sec; exponentially distributed requests; avg service time of an older disk is 20ms; Q: 1. avg server utilization? server utilization =Arrival rate x Timeserver =40 x 0.02 = 0.8

M/M/1 Queue Example 1 a processor sends 40 disk I/Os per sec; exponentially distributed requests; avg service time of an older disk is 20ms; Q: 2. avg time spent in the queue?

M/M/1 Queue Example 1 a processor sends 40 disk I/Os per sec; exponentially distributed requests; avg service time of an older disk is 20ms; Q:3. avg response time (queuing+serv)? Timesystem =Timequeue + Timeserver =80 + 20 = 100 ms

M/M/1 Queue Example 2 a processor sends 40 disk I/Os per sec; exponentially distributed requests; avg service time of an older disk is down to 10ms; Q: 1. avg dis utilization? server utilization =Arrival rate x Timeserver =40 x 0.01 = 0.4

M/M/1 Queue Example 2 a processor sends 40 disk I/Os per sec; exponentially distributed requests; avg service time of an older disk is down to 10ms; Q: 2. avg time spent in the queue?

M/M/1 Queue Example 3 a processor sends 40 disk I/Os per sec; exponentially distributed requests; avg service time of an older disk is down to 10ms; Q:3. avg response time (queuing+serv)? Timesystem =Timequeue + Timeserver =10 + 6.7 = 16.7 ms

M/M/m Queue multiple servers

M/M/m Queue

M/M/m Queue

M/M/m Queue Example a processor sends 40 disk I/Os per sec; exponentially distributed requests; avg service time for read is 20ms; two disks duplicate the data; all requests are reads;

M/M/m Queue Example

M/M/m Queue Example

M/M/m Queue Example avg response time =20 + 3.8 =23.8 ms

?

#What’s More A Radical New Way to Control the English Language by George Gopen