Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


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

1 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

2 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

3 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

4 Increasing block size

5 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)

6 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

7 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

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

9 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

10 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

11 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

12 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

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

14 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)

15 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

16 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

17 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

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

19 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

20 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


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

Similar presentations


Ads by Google