Computer Organization CS224 Fall 2012 Lessons 49 & 50.

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

I/O Chapter 8. Outline Introduction Disk Storage and Dependability – 8.2 Buses and other connectors – 8.4 I/O performance measures – 8.6.
I/O Errors 1 Computer Organization II © McQuain RAID Redundant Array of Inexpensive (Independent) Disks – Use multiple smaller disks (c.f.
RAID Redundant Array of Independent Disks
Enhanced Availability With RAID CC5493/7493. RAID Redundant Array of Independent Disks RAID is implemented to improve: –IO throughput (speed) and –Availability.
RAID- Redundant Array of Inexpensive Drives. Purpose Provide faster data access and larger storage Provide data redundancy.
CSE 486/586 CSE 486/586 Distributed Systems Case Study: Facebook f4 Steve Ko Computer Sciences and Engineering University at Buffalo.
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)
CSCE 212 Chapter 8 Storage, Networks, and Other Peripherals Instructor: Jason D. Bakos.
1 Recap (RAID and Storage Architectures). 2 RAID To increase the availability and the performance (bandwidth) of a storage system, instead of a single.
Computer ArchitectureFall 2007 © November 28, 2007 Karem A. Sakallah Lecture 24 Disk IO and RAID CS : Computer Architecture.
1  1998 Morgan Kaufmann Publishers Chapter 8 Storage, Networks and Other Peripherals.
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.
S.1 Review: Major Components of a Computer Processor Control Datapath Memory Devices Input Output Cache Main Memory Secondary Memory (Disk)
RAID Systems CS Introduction to Operating Systems.
CSE 451: Operating Systems Winter 2010 Module 13 Redundant Arrays of Inexpensive Disks (RAID) and OS structure Mark Zbikowski Gary Kimura.
Chapter 6 Storage and Other I/O Topics CprE 381 Computer Organization and Assembly Level Programming, Fall 2013 Zhao Zhang Iowa State University Revised.
ICOM 6005 – Database Management Systems Design Dr. Manuel Rodríguez-Martínez Electrical and Computer Engineering Department Lecture 6 – RAID ©Manuel Rodriguez.
Input & Output Systems Lecture for CPSC 5155 Edward Bosworth, Ph.D. Computer Science Department Columbus State University.
Computer Organization CS224 Fall 2012 Lesson 51. Measuring I/O Performance  I/O performance depends on l Hardware: CPU, memory, controllers, buses l.
Chapter 6 RAID. Chapter 6 — Storage and Other I/O Topics — 2 RAID Redundant Array of Inexpensive (Independent) Disks Use multiple smaller disks (c.f.
CS 346 – Chapter 10 Mass storage –Advantages? –Disk features –Disk scheduling –Disk formatting –Managing swap space –RAID.
Storage & Peripherals Disks, Networks, and Other Devices.
CS 352 : Computer Organization and Design University of Wisconsin-Eau Claire Dan Ernst Storage Systems.
CSE 321b Computer Organization (2) تنظيم الحاسب (2) 3 rd year, Computer Engineering Winter 2015 Lecture #4 Dr. Hazem Ibrahim Shehata Dept. of Computer.
RAID: High-Performance, Reliable Secondary Storage Mei Qing & Chaoxia Liao Nov. 20, 2003.
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.
Chapter 6 Storage and Other I/O Topics. Chapter 6 — Storage and Other I/O Topics — 2 Introduction I/O devices can be characterized by Behaviour: input,
Lecture 17: Storage and I/O EEN 312: Processors: Hardware, Software, and Interfacing Department of Electrical and Computer Engineering Spring 2014, Dr.
C OMPUTER O RGANIZATION AND D ESIGN The Hardware/Software Interface 5 th Edition Chapter 5 Storage and Other I/O Topics (condensed lecture)
1 Input Output [Adapted from Computer Organization and Design, Patterson & Hennessy, © 2005, and Irwin, PSU 2005]
I/O – Chapter 8 Introduction Disk Storage and Dependability – 8.2 Buses and other connectors – 8.4 I/O performance measures – 8.6.
RAID COP 5611 Advanced Operating Systems Adapted from Andy Wang’s slides at FSU.
Redundant Array of Inexpensive Disks aka Redundant Array of Independent Disks (RAID) Modified from CCT slides.
University of Texas at Austin CS352H - Computer Systems Architecture Fall 2009 Don Fussell CS352H: Computer Systems Architecture Topic 13: I/O Systems.
I/O Lecture notes from MKP and S. Yalamanchili. (2) Introduction I/O devices can be characterized by  Behavior: input, output, storage  Partner: human.
© Pearson Education Limited, Chapter 16 Physical Database Design – Step 7 (Monitor and Tune the Operational System) Transparencies.
Redundant Array of Independent Disks.  Many systems today need to store many terabytes of data.  Don’t want to use single, large disk  too expensive.
Introduction I/O devices can be characterized by – Behaviour: input, output, storage – Partner: human or machine – Data rate: bytes/sec, transfers/sec.
Chapter 6 Storage and Other I/O Topics. Chapter 6 — Storage and Other I/O Topics — 2 Introduction I/O bus connections §6.1 Introduction.
Chapter 6 Storage and Other I/O Topics. Chapter 6 — Storage and Other I/O Topics — 2 Introduction I/O devices can be characterized by Behaviour: input,
CS 6290 I/O and Storage Milos Prvulovic. Storage Systems I/O performance (bandwidth, latency) –Bandwidth improving, but not as fast as CPU –Latency improving.
1 Lecture 27: Disks Today’s topics:  Disk basics  RAID  Research topics.
1 Lecture 23: Storage Systems Topics: disk access, bus design, evaluation metrics, RAID (Sections )
Chapter 6 Storage and Other I/O Topics. Chapter 6 — Storage and Other I/O Topics — 2 Introduction I/O devices can be characterized by Behaviour: input,
Chapter 6 — Storage and Other I/O Topics — 1 Introduction I/O devices can be characterized by Behaviour: input, output, storage Partner: human or machine.
Chapter 6 Storage and Other I/O Topics. Chapter 6 — Storage and Other I/O Topics — 2 Introduction I/O devices can be characterized by Behaviour: input,
Modified by S. J. Fritz Spring 2009 (1) Based on slides from D. Patterson and www-inst.eecs.berkeley.edu/~cs152/ COM 249 – Computer Organization and Assembly.
I/O Errors 1 Computer Organization II © McQuain RAID Redundant Array of Inexpensive (Independent) Disks – Use multiple smaller disks (c.f.
Morgan Kaufmann Publishers Storage and Other I/O Topics
Multiple Platters.
RAID Redundant Arrays of Independent Disks
RAID, Programmed I/O, Interrupt Driven I/O, DMA, Operating System
Morgan Kaufmann Publishers Storage and Other I/O Topics
Computer Architecture Computer Science & Engineering
CSE 451: Operating Systems Spring 2006 Module 18 Redundant Arrays of Inexpensive Disks (RAID) John Zahorjan Allen Center.
ICOM 6005 – Database Management Systems Design
CSE 451: Operating Systems Spring 2005 Module 17 Redundant Arrays of Inexpensive Disks (RAID) Ed Lazowska Allen Center 570.
Morgan Kaufmann Publishers Storage and Other I/O Topics
CSE 451: Operating Systems Winter 2009 Module 13 Redundant Arrays of Inexpensive Disks (RAID) and OS structure Mark Zbikowski Gary Kimura 1.
Morgan Kaufmann Publishers Storage and Other I/O Topics
Morgan Kaufmann Publishers Storage and Other I/O Topics
RAID Redundant Array of Inexpensive (Independent) Disks
Mark Zbikowski and Gary Kimura
CSE 451: Operating Systems Winter 2012 Redundant Arrays of Inexpensive Disks (RAID) and OS structure Mark Zbikowski Gary Kimura 1.
CSE 451: Operating Systems Winter 2007 Module 18 Redundant Arrays of Inexpensive Disks (RAID) Ed Lazowska Allen Center 570.
CSE 451: Operating Systems Autumn 2009 Module 19 Redundant Arrays of Inexpensive Disks (RAID) Ed Lazowska Allen Center 570.
IT 344: Operating Systems Winter 2007 Module 18 Redundant Arrays of Inexpensive Disks (RAID) Chia-Chi Teng CTB
CSE 451: Operating Systems Winter 2006 Module 18 Redundant Arrays of Inexpensive Disks (RAID) Ed Lazowska Allen Center 570.
Presentation transcript:

Computer Organization CS224 Fall 2012 Lessons 49 & 50

Measuring I/O Performance  I/O performance depends on l Hardware: CPU, memory, controllers, buses l Software: operating system, database management system, application l Workload: request rates and patterns  I/O system design can trade-off between response time and throughput l Measurements of throughput often done with constrained response-time §6.7 I/O Performance Measures: …

Transaction Processing Benchmarks  Transactions l Small data accesses (a transaction) to a DBMS l Interested in I/O rate (transactions/sec ), not data rate  Measure throughput l Subject to response time limits and failure handling l ACID (Atomicity, Consistency, Isolation, Durability) l Overall cost per transaction  Transaction Processing Council (TPC) benchmarks ( measure transactions/secwww.tpc.org l TPC-APP: B2B application server and web services l TCP-C: on-line order entry environment l TCP-E: on-line transaction processing for brokerage firm l TPC-H: decision support — business oriented ad-hoc queries

File System & Web Benchmarks  SPEC System File System (SFS) l SPECFSF: a synthetic workload for NFS server, based on monitoring real systems l Results -Throughput (operations/sec) -Response time (average ms/operation)  SPEC Web Server benchmark l SPECWeb measures simultaneous user sessions, subject to required throughput/session l Three workloads: Banking, E-commerce, and Support

I/O vs. CPU Performance  Amdahl’s Law l Don’t neglect I/O performance as parallelism increases compute performance  Example l Benchmark takes 90s CPU time, 10s I/O time l Double the number of CPUs each 2 years -if I/O unchanged—it quickly becomes a bottleneck YearCPU timeI/O timeElapsed time% I/O time now90s10s100s10% +245s10s55s18% +423s10s33s31% +611s10s21s47% §6.9 Parallelism and I/O: RAID

RAID  Redundant Array of Inexpensive (Independent) Disks (see Fig 6.12) l Use multiple smaller disks (c.f. one large disk) l **Parallelism improves performance** l Plus extra disk(s) for redundant data storage  Provides fault tolerant storage system l Especially if failed disks can be “hot swapped”  RAID 0 l No redundancy (“AID”?) -Just stripe data over multiple disks l But it does improve performance

RAID 1 & 2  RAID 1: Mirroring l N + N disks, replicate data -Write data to both data disk and mirror disk -On disk failure, read from mirror  RAID 2: Error correcting code (ECC) l N + E disks (e.g., ) l Split data at bit level across N disks l Generate E-bit ECC l Too complex, not used in practice

RAID 3: Bit-Interleaved Parity  N + 1 disks l Data striped across N disks at byte level l Redundant disk stores parity l Read access -Read all disks l Write access -Generate new parity and update all disks l On failure -Use parity to reconstruct missing data  Not widely used

RAID 4: Block-Interleaved Parity  N + 1 disks l Data striped across N disks at block level l Redundant disk stores parity for a group of blocks l Read access -Read only the disk holding the required block l Write access -Just read disk containing modified block, and parity disk -Calculate new parity, update data disk and parity disk l On failure -Use parity to reconstruct missing data  Not widely used

RAID 3 vs RAID 4

RAID 5: Distributed Parity  N + 1 disks l Like RAID 4, but parity blocks distributed across disks -Avoids parity disk being a bottleneck  Widely used

RAID 6: P + Q Redundancy  N + 2 disks l Like RAID 5, but two lots of parity l Greater fault tolerance, against multiple failures, through more redundancy  Multiple RAID l More advanced systems give similar fault tolerance with better performance

RAID Summary  RAID can improve performance and availability l High availability requires hot swapping  Assumes independent disk failures l Too bad if the building burns down!  See “Hard Disk Performance, Quality and Reliability” l

I/O System Design  Satisfying latency requirements l For time-critical operations l If system is unloaded -Add up latency of components  Maximizing throughput l Find “weakest link” (lowest-bandwidth component) l Configure to operate at its maximum bandwidth l Balance remaining components in the system  If system is loaded, simple analysis is insufficient l Need to use queuing models or simulation §6.8 Designing and I/O System

Server Computers  Applications are increasingly run on servers l Web search, office apps, virtual worlds, …  Requires large data center servers l Multiple processors, networks connections, massive storage => “cloud computing” l Space and power constraints  Server equipment built for 19” racks l Multiples of 1.75” (1U) high §6.10 Real Stuff: Sun Fire x4150 Server

Rack-Mounted Servers Sun Fire x4150 1U server

4 cores each 16 x 4GB = 64GB DRAM

I/O System Design Example  Given a Sun Fire x4150 system with l Workload: 64KB disk reads -Each I/O op requires 200,000 user-code instructions and 100,000 OS instructions l Each CPU: 10 9 instructions/sec l Front Side Bus: 10.6 GB/sec peak l DRAM DDR2 667MHz: GB/sec l PCI-Express 8× bus: 8 × 250MB/sec = 2GB/sec peak l Disks: 15,000 rpm, 2.9ms avg. seek time, 112MB/sec transfer rate (Fig 6.5-Seagate 73GB SAS disks)  What I/O rate can be sustained? l For random reads, and for sequential reads

Design Example (cont)  I/O rate for CPUs l Per core: 10 9 /(100, ,000) = 3,333 ops/sec l 8 cores: 26,667 ops/sec  Random reads, I/O rate for disks l Assume actual seek time is average/4 l Time/op = seek + latency + transfer = 2.9ms/ /250 rot/sec + 64KB/(112MB/s) = 3.3ms l 303 ops/sec per disk, 2424 ops/sec for 8 disks  Sequential reads l 112MB/s / 64KB = 1750 ops/sec per disk l 14,000 ops/sec for 8 disks

Design Example (cont)  PCI-Express I/O rate l 2GB/sec / 64KB = 31,250 ops/sec peak (sustained = ?)  DRAM I/O rate l GB/sec / 64KB = 83,375 ops/sec  FSB I/O rate l Assume we can sustain half the peak rate l 5.3 GB/sec / 64KB = 81,540 ops/sec per FSB l 163,080 ops/sec for 2 FSBs  Weakest link: disks l 2424 ops/sec random, 14,000 ops/sec sequential l Other components have ample headroom to accommodate these rates

Fallacy: Disk Dependability  If a disk manufacturer quotes MTTF as 1,200,000hr (140yr) l Believing that a disk will work that long: “Disks practically never fail”  Wrong! this is the mean time to failure l What is the distribution of failures? l What if you have 1000 disks -How many will fail per year? §6.12 Fallacies and Pitfalls See Figure 6.5 for some typical AFRs

Fallacies  Disk failure rates are as specified in data sheet l Studies of average failure rates in the field -Schroeder and Gibson: 2% to 4% (vs. 0.6% to 0.8%) -Pinheiro, et al.: 1.7% (1st year) to 8.6% (3rd year) (vs. 1.5%) l Why?  A 1GB/s interconnect transfers 1GB in one sec l But what’s a GB? l For bandwidth, use 1GB = 10 9 B l For storage, use 1GB = 2 30 B = 1.075×10 9 B l So 1GB/sec is 0.93GB in one second -About 7% error

Pitfall: Offloading to I/O Processors  Overhead of managing I/O processor request may dominate l Quicker to do small operation on the CPU l But I/O architecture may prevent that  I/O processor may be slower l Since it’s supposed to be simpler  Making it faster makes it into a major system component l Might need its own coprocessors!

Pitfall: Backing Up to Tape  Magnetic tape used to have advantages l Removable, high capacity  Advantages eroded by disk technology developments  Makes better sense to replicate data l E.g, RAID, remote mirroring

Pitfall: Peak Performance  Peak I/O rates are nearly impossible to achieve l Usually, some other system component limits performance l E.g., transfers to memory over a bus -Collision with DRAM refresh -Arbitration contention with other bus masters l E.g., 32-bit PCI bus: peak bandwidth ~133 MB/sec (4 bytes per bus clock rate) -In practice, only ~80MB/sec is sustainable -Actual performance on a bus depends on several factors (bus design, # of users, load, distance, etc)

Concluding Remarks  I/O performance measures l Throughput, response time l Dependability and cost also important  Buses used to connect CPU, memory, I/O controllers l Polling, interrupts, DMA  I/O benchmarks l TPC, SPECSFS, SPECWeb  RAID l Improves performance and dependability §6.13 Concluding Remarks