TRACK-ALIGNED EXTENTS: MATCHING ACCESS PATTERNS TO DISK DRIVE CHARACTERISTICS J. Schindler J.-L.Griffin C. R. Lumb G. R. Ganger Carnegie Mellon University.

Slides:



Advertisements
Similar presentations
Overview of Mass Storage Structure
Advertisements

Chapter 12: File System Implementation
Chapter 6: Memory Management
Operating Systems Lecture 10 Issues in Paging and Virtual Memory Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard. Zhiqing.
File Systems.
CSE506: Operating Systems Disk Scheduling. CSE506: Operating Systems Key to Disk Performance Don’t access the disk – Whenever possible Cache contents.
Allocating Memory.
Allocation Methods - Contiguous
Chapter 11: File System Implementation
CS 153 Design of Operating Systems Spring 2015
File System Implementation
File System Implementation CSCI 444/544 Operating Systems Fall 2008.
G Robert Grimm New York University SGI’s XFS or Cool Pet Tricks with B+ Trees.
Chapter 12: File System Implementation
CS 104 Introduction to Computer Science and Graphics Problems
CS 333 Introduction to Operating Systems Class 18 - File System Performance Jonathan Walpole Computer Science Portland State University.
File System Structure §File structure l Logical storage unit l Collection of related information §File system resides on secondary storage (disks). §File.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Chapter 13 Disk Storage, Basic File Structures, and Hashing.
Secondary Storage CSCI 444/544 Operating Systems Fall 2008.
File System Implementation
Introduction to Database Systems 1 The Storage Hierarchy and Magnetic Disks Storage Technology: Topic 1.
1.A file is organized logically as a sequence of records. 2. These records are mapped onto disk blocks. 3. Files are provided as a basic construct in operating.
CS4432: Database Systems II Data Storage (Better Block Organization) 1.
CS 346 – Chapter 8 Main memory –Addressing –Swapping –Allocation and fragmentation –Paging –Segmentation Commitment –Please finish chapter 8.
Lecture 9 of Advanced Databases Storage and File Structure (Part II) Instructor: Mr.Ahmed Al Astal.
Introduction to Database Systems 1 Storing Data: Disks and Files Chapter 3 “Yea, from the table of my memory I’ll wipe away all trivial fond records.”
Operating Systems (CS 340 D) Dr. Abeer Mahmoud Princess Nora University Faculty of Computer & Information Systems Computer science Department.
March 16 & 21, Csci 2111: Data and File Structures Week 9, Lectures 1 & 2 Indexed Sequential File Access and Prefix B+ Trees.
File System Implementation Chapter 12. File system Organization Application programs Application programs Logical file system Logical file system manages.
CE Operating Systems Lecture 20 Disk I/O. Overview of lecture In this lecture we will look at: Disk Structure Disk Scheduling Disk Management Swap-Space.
Chapter 11: File System Implementation Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Jan 1, 2005 File-System Structure.
By Teacher Asma Aleisa Year 1433 H.   Goals of memory management  To provide a convenient abstraction for programming  To allocate scarce memory resources.
External Storage Primary Storage : Main Memory (RAM). Secondary Storage: Peripheral Devices –Disk Drives –Tape Drives Secondary storage is CHEAP. Secondary.
Free Space Management.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 12: File System Implementation File System Structure File System Implementation.
File System Implementation
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 11: File System Implementation.
CS 153 Design of Operating Systems Spring 2015 Lecture 21: File Systems.
By Teacher Asma Aleisa Year 1433 H.   Goals of memory management  To provide a convenient abstraction for programming.  To allocate scarce memory.
Lecture 3 Page 1 CS 111 Online Disk Drives An especially important and complex form of I/O device Still the primary method of providing stable storage.
File Structures. 2 Chapter - Objectives Disk Storage Devices Files of Records Operations on Files Unordered Files Ordered Files Hashed Files Dynamic and.
Virtual Memory 1 1.
12.1 Silberschatz, Galvin and Gagne ©2003 Operating System Concepts with Java Chapter 12: File System Implementation Chapter 12: File System Implementation.
Chapter 11: File System Implementation Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 11: File System Implementation Chapter.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 12: File System Implementation File System Structure File System Implementation.
Disk & File System Management Disk Allocation Free Space Management Directory Structure Naming Disk Scheduling Protection CSE 331 Operating Systems Design.
Improving Disk Throughput in Data-Intensive Servers Enrique V. Carrera and Ricardo Bianchini Department of Computer Science Rutgers University.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition File System Implementation.
CS333 Intro to Operating Systems Jonathan Walpole.
12/18/20151 Operating Systems Design (CS 423) Elsa L Gunter 2112 SC, UIUC Based on slides by Roy Campbell, Sam.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 12: File System Implementation File System Structure File System Implementation.
11.1 Silberschatz, Galvin and Gagne ©2005 Operating System Principles 11.5 Free-Space Management Bit vector (n blocks) … 012n-1 bit[i] =  1  block[i]
Chapter 5 Record Storage and Primary File Organizations
Programmer’s View of Files Logical view of files: –An a array of bytes. –A file pointer marks the current position. Three fundamental operations: –Read.
Lecture Topics: 11/22 HW 7 File systems –block allocation Unix and NT –disk scheduling –file caches –RAID.
W4118 Operating Systems Instructor: Junfeng Yang.
Operating System (013022) Dr. H. Iwidat
Memory Management.
CE 454 Computer Architecture
Chapter 2 Memory and process management
File-System Implementation
Lecture 45 Syed Mansoor Sarwar
Chapter 11: File System Implementation
Overview Continuation from Monday (File system implementation)
Overview: File system implementation (cont)
File Storage and Indexing
Chapter 14: File-System Implementation
COMP755 Advanced Operating Systems
Virtual Memory 1 1.
Presentation transcript:

TRACK-ALIGNED EXTENTS: MATCHING ACCESS PATTERNS TO DISK DRIVE CHARACTERISTICS J. Schindler J.-L.Griffin C. R. Lumb G. R. Ganger Carnegie Mellon University STILL INCOMPLETE

Key Ideas Track-based disk access could improve performance of modern disk drives by up to 50% Track boundaries can be detected at a reasonable cost This knowledge can be used by existing file systems without creating hardware dependencies The technique results significant improvements of application performance

MOTIVATION Modern disk drives virtualize their storage space as a “flat array of fixed-size blocks” –Prevents OS from taking into account actual characteristics of disk drive Sole feasible optimization technique is increasing block size –Introduces several problems –Has limited benefits

Increasing block size

Increasing block sizes (cont’d) Achieving good disk efficiency requires very large blocks : –Only 50% efficiency for random writes with 256K blocks Aligning blocks with track boundaries achieves much higher efficiencies : –Best results obtained when block size is multiple of track size (264KB in example)

TRACK-BASED DISK ACCESS Cannot keep increasing disk request sizes because large disk requests –Have higher latency –Require more I/O buffer space –Work best when applications access sequentially very large files –Require collocation of related small files

Disk characteristics Head switches occur anytime a single request accesses blocks that span two tracks –Cause a delay of 0.6 to 1ms –Are not likely to diminish in the near future Zero-latency access allows disk firmware to read data blocks in the order they can be read rather than in the requested order

Example Disk firmware wants to read sector Disk head located before sector 250 Firmware will read –Fist sectors 250 to 299 –Then sectors 200 to 249

TRACK-AWARE SYSTEM DESIGN Locating track boundaries is not easy because –Outer tracks have more sectors than inner tracks –Tracks have spare blocks –Defect handling schemes vary widely among disk makes and models Need be performed once –Defects only appear during first 48 hours of operation

Allocation and access (I) To use track boundary information, file system must support variable extents Extent-based file systems specify ranges of LBNs allocated to each file ( extents ) –Should always specify extents that fit track boundaries

Allocation and access (II) Block-based file systems, such as FFS, group LBNs into fixed-size groups of 2 n sectors called blocks –Must ensure that blocks will never span track boundaries –Wastes less than 5% of disk space –This space could still be used for other purposes

Allocation and access (III) Should also –Extend or clip prefetch and write back requests based on track boundaries –Use disk command queuing to fully take advantage of zero-latency disks Current SCSI and IDE/ATA controllers do not allow out-of-order delivery to or from the host

Prototype implementation Prototype includes –Two techniques for detecting track boundaries –A modified version of FreeBSD FFS

Detecting track boundaries (I) First technique: –Identifies discontinuities in access efficiency –Could be done by linearly increasing number of sector in each I/O request –Uses instead binary search algorithm and tries to predict size of next extent –Still very slow (4 hours for 9GB disk)

Detecting track boundaries (II) Second technique: –Specific to SCSI disks –Extract disk information through SCSI commands –Exploits the regularity of disk geometry –Much faster ( < one minute per disk) –Does not always work when disk mapping scheme is not knwon

FreeBSD FFS overview Each block has –An lblkno (logical block number) specifying its offset from the beginning of the file –A blkno (physical block number), which is an abstract representation of disk addresses used by the OS Each blkno corresponds to a range of contiguous disk sector numbers

Free BSD modifications Exclude from all allocation decisions all blocks that span track boundaries –Mark them as used in the free block map FFS clustered read-ahead algorithm –Accesses runs of blocks between excluded blocks with a single request Must still take care of track boundaries without excluded blocks

Evaluation Using –Two disks supporting zero-latency access –Two disks supporting it Also used Disksim simulator to simulate disks

Disk performance Measured request head time, that is, amount of time that the head is dedicated to a request –Biggest improvements were for disks supporting zero-delay access Efficiency improvements of up to 50% Also reduced standard-deviation of response times

Other experiments With a modified FFS file system –Not that different timings With a video server –Track extents resulted in much lower startup latency at high arrival rates A log-structured file system