Improving Disk Throughput in Data-Intensive Servers Enrique V. Carrera and Ricardo Bianchini Department of Computer Science Rutgers University.

Slides:



Advertisements
Similar presentations
Multi-Level Caches Vittorio Zaccaria. Preview What you have seen: Data organization, Associativity, Cache size Policies -- how to manage the data once.
Advertisements

1 Improving Direct-Mapped Cache Performance by the Addition of a Small Fully-Associative Cache and Prefetch Buffers By Sreemukha Kandlakunta Phani Shashank.
Scalable Multi-Cache Simulation Using GPUs Michael Moeng Sangyeun Cho Rami Melhem University of Pittsburgh.
File Systems.
Issues and Challenges in the Performance Analysis of Real Disk Arrays Elizabeth Varki, Arif Merchant, Jianzhang Xu and Xiaozhou Qiu Presented by:Soumya.
Memory System Characterization of Big Data Workloads
The design and implementation of a log-structured file system The design and implementation of a log-structured file system M. Rosenblum and J.K. Ousterhout.
Improving Proxy Cache Performance: Analysis of Three Replacement Policies Dilley, J.; Arlitt, M. A journal paper of IEEE Internet Computing, Volume: 3.
Cooperative Caching Middleware for Cluster-Based Servers Francisco Matias Cuenca-Acuna Thu D. Nguyen Panic Lab Department of Computer Science Rutgers University.
Energy Efficient Prefetching – from models to Implementation 6/19/ Adam Manzanares and Xiao Qin Department of Computer Science and Software Engineering.
Improving Proxy Cache Performance: Analysis of Three Replacement Policies John Dilley and Martin Arlitt IEEE internet computing volume3 Nov-Dec 1999 Chun-Fu.
CS 333 Introduction to Operating Systems Class 18 - File System Performance Jonathan Walpole Computer Science Portland State University.
A Novel Video Layout Strategy for Near-Video-on- Demand Servers Shenze Chen & Manu Thapar Hewlett-Packard Labs 1501 Page Mill Rd. Palo Alto, CA
Memory access scheduling Authers: Scott RixnerScott Rixner,William J. Dally,Ujval J. Kapasi, Peter Mattson, John D. OwensWilliam J. DallyUjval J. KapasiPeter.
Web-Conscious Storage Management for Web Proxies Evangelos P. Markatos, Dionisios N. Pnevmatikatos, Member, IEEE, Michail D. Flouris, and Manolis G. H.
1 Presenter: Chien-Chih Chen Proceedings of the 2002 workshop on Memory system performance.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 34 – Media Server (Part 3) Klara Nahrstedt Spring 2012.
THE DESIGN AND IMPLEMENTATION OF A LOG-STRUCTURED FILE SYSTEM M. Rosenblum and J. K. Ousterhout University of California, Berkeley.
© 2009 IBM Corporation Statements of IBM future plans and directions are provided for information purposes only. Plans and direction are subject to change.
Gordon: Using Flash Memory to Build Fast, Power-efficient Clusters for Data-intensive Applications A. Caulfield, L. Grupp, S. Swanson, UCSD, ASPLOS’09.
Hystor : Making the Best Use of Solid State Drivers in High Performance Storage Systems Presenter : Dong Chang.
RAID-x: A New Distributed Disk Array for I/O-Centric Cluster Computing Kai Hwang, Hai Jin, and Roy Ho.
Basics of Operating Systems March 4, 2001 Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard.
RAID: High-Performance, Reliable Secondary Storage Mei Qing & Chaoxia Liao Nov. 20, 2003.
Dynamic and Decentralized Approaches for Optimal Allocation of Multiple Resources in Virtualized Data Centers Wei Chen, Samuel Hargrove, Heh Miao, Liang.
1 Design and Performance of a Web Server Accelerator Eric Levy-Abegnoli, Arun Iyengar, Junehwa Song, and Daniel Dias INFOCOM ‘99.
TRACK-ALIGNED EXTENTS: MATCHING ACCESS PATTERNS TO DISK DRIVE CHARACTERISTICS J. Schindler J.-L.Griffin C. R. Lumb G. R. Ganger Carnegie Mellon University.
Operating Systems (CS 340 D) Dr. Abeer Mahmoud Princess Nora University Faculty of Computer & Information Systems Computer science Department.
Chapter 1 Computer System Overview Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William.
 Higher associativity means more complex hardware  But a highly-associative cache will also exhibit a lower miss rate —Each set has more blocks, so there’s.
High Availability in Clustered Multimedia Servers Renu Tewari Daniel M. Dias Rajat Mukherjee Harrick M. Vin.
Web Cache Replacement Policies: Properties, Limitations and Implications Fabrício Benevenuto, Fernando Duarte, Virgílio Almeida, Jussara Almeida Computer.
RAPID-Cache – A Reliable and Inexpensive Write Cache for Disk I/O Systems Yiming Hu Qing Yang Tycho Nightingale.
« Performance of Compressed Inverted List Caching in Search Engines » Proceedings of the International World Wide Web Conference Commitee, Beijing 2008)
THE DESIGN AND IMPLEMENTATION OF A LOG-STRUCTURED FILE SYSTEM M. Rosenblum and J. K. Ousterhout University of California, Berkeley.
Building a Parallel File System Simulator E Molina-Estolano, C Maltzahn, etc. UCSC Lab, UC Santa Cruz. Published in Journal of Physics, 2009.
Chapter Twelve Memory Organization
X-RAY: A Non-Invasive Exclusive Caching Mechanism for RAIDs Lakshmi N. Bairavasundaram Muthian Sivathanu Andrea C. Arpaci-Dusseau Remzi H. Arpaci-Dusseau.
The Design and Implementation of Log-Structure File System M. Rosenblum and J. Ousterhout.
Log-structured Memory for DRAM-based Storage Stephen Rumble, John Ousterhout Center for Future Architectures Research Storage3.2: Architectures.
"1"1 Introduction to Managing Data " Describe problems associated with managing large numbers of disks " List requirements for easily managing large amounts.
Exploiting Gray-Box Knowledge of Buffer Cache Management Nathan C. Burnett, John Bent, Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau University of.
Data Replication and Power Consumption in Data Grids Susan V. Vrbsky, Ming Lei, Karl Smith and Jeff Byrd Department of Computer Science The University.
CS 153 Design of Operating Systems Spring 2015 Lecture 22: File system optimizations.
CS 153 Design of Operating Systems Spring 2015 Lecture 21: File Systems.
PROP: A Scalable and Reliable P2P Assisted Proxy Streaming System Computer Science Department College of William and Mary Lei Guo, Songqing Chen, and Xiaodong.
Time Parallel Simulations I Problem-Specific Approach to Create Massively Parallel Simulations.
Fast File System 2/17/2006. Introduction Paper talked about changes to old BSD 4.2 File System (FS) Motivation - Applications require greater throughput.
Adaptive GPU Cache Bypassing Yingying Tian *, Sooraj Puthoor†, Joseph L. Greathouse†, Bradford M. Beckmann†, Daniel A. Jiménez * Texas A&M University *,
Introduction: Memory Management 2 Ideally programmers want memory that is large fast non volatile Memory hierarchy small amount of fast, expensive memory.
File management and Performance. File Systems Architecture device drivers physical I/O (PIOCS) logical I/O (LIOCS) access methods File organization and.
Full and Para Virtualization
Tracking Millions of Flows In High Speed Networks for Application Identification Tian Pan, Xiaoyu Guo, Chenhui Zhang, Junchen Jiang, Hao Wu and Bin Liut.
Memory Management Continued Questions answered in this lecture: What is paging? How can segmentation and paging be combined? How can one speed up address.
Jeffrey Ellak CS 147. Topics What is memory hierarchy? What are the different types of memory? What is in charge of accessing memory?
Embedded System Lab. 정영진 The Design and Implementation of a Log-Structured File System Mendel Rosenblum and John K. Ousterhout ACM Transactions.
GPFS: A Shared-Disk File System for Large Computing Clusters Frank Schmuck & Roger Haskin IBM Almaden Research Center.
Chapter 11 System Performance Enhancement. Basic Operation of a Computer l Program is loaded into memory l Instruction is fetched from memory l Operands.
Taeho Kgil, Trevor Mudge Advanced Computer Architecture Laboratory The University of Michigan Ann Arbor, USA CASES’06.
Internal Parallelism of Flash Memory-Based Solid-State Drives
Jonathan Walpole Computer Science Portland State University
5.2 Eleven Advanced Optimizations of Cache Performance
Module IV Memory Organization.
Qingbo Zhu, Asim Shankar and Yuanyuan Zhou
CSE 451: Operating Systems Autumn 2009 Module 17 Berkeley Log-Structured File System Ed Lazowska Allen Center
Virtual Memory: Working Sets
COMP755 Advanced Operating Systems
Dong Hyun Kang, Changwoo Min, Young Ik Eom
The Design and Implementation of a Log-Structured File System
Presentation transcript:

Improving Disk Throughput in Data-Intensive Servers Enrique V. Carrera and Ricardo Bianchini Department of Computer Science Rutgers University

Introduction  Disk drives are often bottlenecks  Several optimizations have been proposed Disk arrays Fewer disk reads using fancy buffer cache mgmt Optimized disk writes using logs Optimized disk scheduling  Disk throughput still problem for data- intensive servers

Modern Disk Drives  Substantial processing and memory capacity  Disk controller cache Independent segments = sequential streams If #streams > #segments, LRU segm is replaced On access, blocks are read ahead to fill segment  Disk arrays Array controller may also cache data Striping affects read-ahead

Key Problem  Controller caches not designed for servers Sequential access to small # large files Read-ahead of consecutive blocks Segment is unit of allocation and replacement  Data-intensive servers Small files Large # concurrent accesses Large # blocks often miss in the controller cache

This Work  Goal Management techniques for disk controller caches that are efficient for servers  Techniques File-Oriented Read-ahead (FOR) Host-guided Device Caching (HDC)  Exploit processing and memory of drives

Architecture

File-Oriented Read-ahead  Disk controller has no notion of file layout  Read-ahead can be useless for small files Disk utilization is not amortized Useless blocks pollute the controller cache  FOR only reads ahead blocks of same file

File-Oriented Read-ahead  FOR needs to know layout of files on disk Bitmap of disk blocks kept by controller 1  block is logical continuation of previous block Initialized at boot, updated on metadata writes  # blocks to read-ahead = # consecutive 1’s or max read-ahead size

File-Oriented Read-ahead  FOR could underutilize segments, so allocation and replacement based on blocks  Replacement policy: MRU  FOR benefits Lower disk utilization Higher controller cache hit rates

Host-guided Device Caching  Data-intensive servers rely on disk arrays, so non-trivial amount of cache space  Current disk controller caches are speed matching and read-ahead buffers  More useful if each cache can be managed directly by the host processor

Host-guided Device Caching  Our evaluation: Disk controllers permanently cache data with most misses in buffer cache Each controller caches data stored on its disk Assumes block-based organization  Support for three simple commands pin_blk() unpin_blk() flush_hdc()

Host-guided Device Caching  Execution divided into periods to determine: How many blocks to cache; which blocks those are; when to cache them  HDC benefits Higher cache hit rate Lower disk utilization  Tradeoff: space for HDC and read-aheads

Methodology  Simulation of 8 IBM Ultrastar 36Z15 drives attached to non-caching Ultra160 SCSI card  Logical disk blocks striped across array  Contention for buses, memories, and other components is simulated in detail  Synthetic + real traces (Web, proxy, file)

Real Workloads Web: I/O time as function of striping unit size HDC: 2MB

Real Workloads Web: I/O time as function of HDC memory size Stripes: 16KB

Real Workloads  Summary Consistent and significant performance gains Combination achieves best overall performance

Related Work  Techniques external to disk controllers  Controller cache different than other caches Lack of temporal locality Orders of magnitude smaller than main memory Read-ahead restricted to sequential blocks  Explicit grouping Grouping needs to be found and maintained Segment replacements may eliminate benefits

Related Work  Controller read-ahead & caching techniques None considered file system info, host-guided caching, or block-based organizations  Other disk controller optimizations Scheduling of requests Utilizing free bandwidth Data replication FOR and HDC are orthogonal

Conclusions  Current controller cache management is inappropriate for servers  FOR and HDC can achieve significant and consistent increases in server throughput  Real workloads show improvements of 47, 33 and 21% (Web, proxy, and file server)

Extensions  Strategies for servers that use raw I/O  Better approach than bitmap  Array controllers that cache data and hide individual disks  Impact of other replacement policies and sizes for the buffer cache

More Information

Synthetic Workloads I/O time as function of file size

Synthetic Workloads I/O time as function of simultaneous streams

Synthetic Workloads I/O time as function of access frequency

Synthetic Workloads  Summary No read-ahead hurts performance for files > 16KB No effect if simply replace segments with blocks FOR gains increase as file size decreases and # simultaneous streams increases HDC gains increase as requests are shifted toward a small # blocks FOR gains decrease as % writes increases

Synthetic Workloads I/O time as function of percentage of writes