Issues and Challenges in the Performance Analysis of Real Disk Arrays Elizabeth Varki, Arif Merchant, Jianzhang Xu and Xiaozhou Qiu Presented by:Soumya.

Slides:



Advertisements
Similar presentations
Disk Arrays COEN 180. Large Storage Systems Collection of disks to store large amount of data. Performance advantage: Each drive can satisfy only so many.
Advertisements

Redundant Array of Independent Disks (RAID) Striping of data across multiple media for expansion, performance and reliability.
I/O Management and Disk Scheduling Chapter 11. I/O Driver OS module which controls an I/O device hides the device specifics from the above layers in the.
I/O Management and Disk Scheduling
RAID Redundant Array of Independent Disks
Operating Systems ECE344 Ashvin Goel ECE University of Toronto Disks and RAID.
CSE506: Operating Systems Disk Scheduling. CSE506: Operating Systems Key to Disk Performance Don’t access the disk – Whenever possible Cache contents.
1 Conserving Energy in RAID Systems with Conventional Disks Dong Li, Jun Wang Dept. of Computer Science & Engineering University of Nebraska-Lincoln Peter.
Chapter 3 Presented by: Anupam Mittal.  Data protection: Concept of RAID and its Components Data Protection: RAID - 2.
2P13 Week 11. A+ Guide to Managing and Maintaining your PC, 6e2 RAID Controllers Redundant Array of Independent (or Inexpensive) Disks Level 0 -- Striped.
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)
REDUNDANT ARRAY OF INEXPENSIVE DISCS RAID. What is RAID ? RAID is an acronym for Redundant Array of Independent Drives (or Disks), also known as Redundant.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 19 Scheduling IV.
1 Storage (cont’d) Disk scheduling Reducing seek time (cont’d) Reducing rotational latency RAIDs.
1 Lecture 26: Storage Systems Topics: Storage Systems (Chapter 6), other innovations Final exam stats:  Highest: 95  Mean: 70, Median: 73  Toughest.
Lecture 3: A Case for RAID (Part 1) Prof. Shahram Ghandeharizadeh Computer Science Department University of Southern California.
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
1 Storage Hierarchy Cache Main Memory Virtual Memory File System Tertiary Storage Programs DBMS Capacity & Cost Secondary Storage.
Performance Evaluation
Device Management.
Storage Networks How to Handle Heterogeneity Bálint Miklós January 24th, 2005 ETH Zürich External Memory Algorithms and Data Structures.
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
I/O Systems and Storage Systems May 22, 2000 Instructor: Gary Kimura.
CSE 451: Operating Systems Winter 2010 Module 13 Redundant Arrays of Inexpensive Disks (RAID) and OS structure Mark Zbikowski Gary Kimura.
Layers of a DBMS Query optimization Execution engine Files and access methods Buffer management Disk space management Query Processor Query execution plan.
Redundant Array of Inexpensive Disks (RAID). Redundant Arrays of Disks Files are "striped" across multiple spindles Redundancy yields high data availability.
Analysis of Simulation Results Andy Wang CIS Computer Systems Performance Analysis.
Storage Systems CSE 598d, Spring 2007 Lecture 5: Redundant Arrays of Inexpensive Disks Feb 8, 2007.
Lecture 4 1 Reliability vs Availability Reliability: Is anything broken? Availability: Is the system still available to the user?
1 Recitation 8 Disk & File System. 2 Disk Scheduling Disks are at least four orders of magnitude slower than main memory –The performance of disk I/O.
Two or more disks Capacity is the same as the total capacity of the drives in the array No fault tolerance-risk of data loss is proportional to the number.
Toolbox for Dimensioning Windows Storage Systems Jalil Boukhobza, Claude Timsit 12/09/2006 Versailles Saint Quentin University.
Disk Access. DISK STRUCTURE Sector: Smallest unit of data transfer from/to disk; 512B 2/4/8 adjacent sectors transferred together: Blocks Read/write heads.
Topic: Disks – file system devices. Rotational Media Sector Track Cylinder Head Platter Arm Access time = seek time + rotational delay + transfer time.
Chapter 11 I/O Management and Disk Scheduling Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and.
M EAN -V ALUE A NALYSIS Manijeh Keshtgary O VERVIEW Analysis of Open Queueing Networks Mean-Value Analysis 2.
1 I/O Management and Disk Scheduling Chapter Categories of I/O Devices Human readable Used to communicate with the user Printers Video display terminals.
Modeling and Performance Evaluation of Network and Computer Systems Introduction (Chapters 1 and 2) 10/4/2015H.Malekinezhad1.
1 Performance Evaluation of Computer Systems and Networks Introduction, Outlines, Class Policy Instructor: A. Ghasemi Many thanks to Dr. Behzad Akbari.
Building a Parallel File System Simulator E Molina-Estolano, C Maltzahn, etc. UCSC Lab, UC Santa Cruz. Published in Journal of Physics, 2009.
An I/O Simulator for Windows Systems Jalil Boukhobza, Claude Timsit 27/10/2004 Versailles Saint Quentin University laboratory.
Chapter Twelve Memory Organization
RAID SECTION (2.3.5) ASHLEY BAILEY SEYEDFARAZ YASROBI GOKUL SHANKAR.
Performance Prediction for Random Write Reductions: A Case Study in Modelling Shared Memory Programs Ruoming Jin Gagan Agrawal Department of Computer and.
ICOM 6115: Computer Systems Performance Measurement and Evaluation August 11, 2006.
"1"1 Introduction to Managing Data " Describe problems associated with managing large numbers of disks " List requirements for easily managing large amounts.
PR SM Laboratory A Parameter Extraction Tool for Windows I/O System Characterization Versailles Saint Quentin University National Scientific research center.
+ CS 325: CS Hardware and Software Organization and Architecture Memory Organization.
CS 153 Design of Operating Systems Spring 2015 Lecture 22: File system optimizations.
The concept of RAID in Databases By Junaid Ali Siddiqui.
I/O Management and Disk Scheduling Chapter 11. Disk Performance Parameters To read or write, the disk head must be positioned at the desired track and.
Improving Disk Throughput in Data-Intensive Servers Enrique V. Carrera and Ricardo Bianchini Department of Computer Science Rutgers University.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Chapter 14: Mass-Storage Systems Disk Structure. Disk Scheduling. RAID.
NUS.SOC.CS5248 Ooi Wei Tsang 1 Course Matters. NUS.SOC.CS5248 Ooi Wei Tsang 2 Make-Up Lecture This Saturday, 23 October TR7, 1-3pm Topic: “CPU scheduling”
CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 27 – Media Server (Part 2) Klara Nahrstedt Spring 2009.
Part IV I/O System Chapter 12: Mass Storage Structure.
Enhanced Availability With RAID CC5493/7493. RAID Redundant Array of Independent Disks RAID is implemented to improve: –IO throughput (speed) and –Availability.
RAID Technology By: Adarsha A,S 1BY08A03. Overview What is RAID Technology? What is RAID Technology? History of RAID History of RAID Techniques/Methods.
RAID TECHNOLOGY RASHMI ACHARYA CSE(A) RG NO
Magnetic Disks Have cylinders, sectors platters, tracks, heads virtual and real disk blocks (x cylinders, y heads, z sectors per track) Relatively slow,
Multiple Platters.
Disks and RAID.
Auburn University COMP7500 Advanced Operating Systems I/O-Aware Load Balancing Techniques (2) Dr. Xiao Qin Auburn University.
RAID RAID Mukesh N Tekwani
Data Orgnization Frequently accessed data on the same storage device?
Persistence: hard disk drive
Chapter 11 I/O Management and Disk Scheduling
RAID RAID Mukesh N Tekwani April 23, 2019
Presentation transcript:

Issues and Challenges in the Performance Analysis of Real Disk Arrays Elizabeth Varki, Arif Merchant, Jianzhang Xu and Xiaozhou Qiu Presented by:Soumya Eachempati

RAID Redundant Array of Inexpensive Disks Redundancy and Striping –Capacity –Speed (Parallelism) –Availability of storage systems Multiple disks, large caches, array controllers - implement load-balancing, request coalescing, adaptive prefetching.

Why - Performance Modeling Storage systems are slow. Any improvement in the performance would escalate the system performance for I/O intensive applications. Metrics used: –Response time –Throughput –Queue length

Approaches Analytic - quick and dirty, less expensive Simulation - more accurate, lot of effort So which method will you choose? Authors develop analytic model that includes array controller optimizations

Previous Work Disk array performance Efficient Caching algorithms This paper models the parallelism of disk arrays and effects of caching on performance. Presents a Baseline model with known parameter values. Extraction of array controller optimizations using the baseline model and workloads that isolate specific optimizations.

Disk Array Architecture

RAID 1/0 configuration

Key Components

Some Assumptions M jobs generate synchronous requests. At-most one request from each stream at the disk array. Each job spends some time at the CPU before submitting request to the disk array. Read only and write only requests stream. No queueing at the CPU/terminal.

Read Model

Write Model

Response time Array_response_time[m] = cache_response_time[m] + disks_response_time[m] Array_throughput[m] = m / (CPU_delay + array_response_time[m]) Cache_queue[m] = cache_response_time[m] * array_throughput[m] (Little’s law)

Response time Arrival theorem states that the number of jobs “seen” by a job upon arrival at a subsystem is equal to the mean queue length at the subsystem computed when the network has one less job. The response time of the arriving job is equal to the sum of the arriving job’s service time plus the time required to service the jobs seen ahead.

Baseline model parameters Disk Service time Parallelism Overhead Disk access probability Cache parameters Write model input parameters.

Disk Service time Very important to get an accurate estimate. Seek distance - disk scheduling policy and location of disk IO requests.

Disk positioning time Degree of sequentiality has minimal effect for disk_queue > 3 Disk positioning time linear function of disk_queue length for disk_queue < 3 for simplicity.

Cyclic dependancy Disk service time depends on disk queue length which again depends on disk service time. Assume disk queue length is an input parameter. If CPU_delay = 0 then disk_queue = M * disk_access_probability.

Parameters Parallel_overhead = max_position_time - disk_position_time Disk_access_probability = cache_miss_probability * num_diskIOs_per_request / stripe_width Cache_hit = 1 - (read_ahead_miss * re_reference_miss) Cache_service_time = request_size / cache_transfer_rate. Once destage_threshold is reached, writes data to all the disks at a time. –µ = stripe_width / 2 * disk_service_time

Array controller Optimizations Access coalescing policy Redundancy based load balancing policy Adaptive prefetching Simplest baseline model - small random read requests with CPU_delay = 0.

Workload Characterization

Setup Trace of all IO activity at the device driver level. Trace contains –I/O submission and completion times. –Logical addresses –Sizes of requests

Optimizations Disk I/O accesses to contiguous data on the same disk coalesced into a single disk IO. Example : 96KB striped across 3 disks with stripe unit size = 16KB. Redundancy load balancing –Single request distributed to both the disk and its mirror. (transfer time reduction) –2 different requests to the disks and its mirrors. (queue length reduction)

Policy effects Access coalescing and load balancing effect number of disk IO requests per request. Large request sizes > stripe_width * stripe_unit_size Num_diskIOs_per_request = stripe_width (transfer time reduction) = stripe_width / 2 for disk_queue_length reduction.

Access Coalescing Random workloads - caching is eliminated. Using large request sizes both the policies can be evaluated > stripe_width / 2 Adaptive prefetching: Sequential read requests - workload. Explicit read-ahead is turned off. Re-reference hit is zero.

Modeling Adaptive prefetching and load balancing Num_disIOs_per_request = stripe_width for request_size > stripe_width * stripe_unit_size Ceiling(requests_size / stripe_unit_size)

Load Balancing Workload consists of same-sized requests.

Write-back caching Size at-most 2 stripes. Large requests - bypass the cache.

Validation Model performs better for random than sequential Ios Random Reads - 3.7% Random writes - 5.5% Sequential reads - 8.8% Sequential writes - 8.0% Adaptive prefetching works well for disk queue length < 4. Disk writes and disk reads similar performance.

Challenges Disk parameters disk queue length affects the caching policies as well. Paucity of data.(Bus transfer rate 35% higher) Performance as a function of disk array controller optimizations, array caching policies, workload distributions along with disk service time, the stripe unit size and stripe width. Better Approximation of disk queue length.

THANK YOU Questions?