1 Storage-Aware Caching: Revisiting Caching for Heterogeneous Storage Systems (Fast’02) Brian Forney Andrea Arpaci-Dusseau Remzi Arpaci-Dusseau Wisconsin.

Slides:



Advertisements
Similar presentations
Conserving Disk Energy in Network Servers ACM 17th annual international conference on Supercomputing Presented by Hsu Hao Chen.
Advertisements

HyLog: A High Performance Approach to Managing Disk Layout Wenguang Wang Yanping Zhao Rick Bunt Department of Computer Science University of Saskatchewan.
4.4 Page replacement algorithms
Background Virtual memory – separation of user logical memory from physical memory. Only part of the program needs to be in memory for execution. Logical.
Full-System Timing-First Simulation Carl J. Mauer Mark D. Hill and David A. Wood Computer Sciences Department University of Wisconsin—Madison.
Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley presented by Daniel Figueiredo Chord: A Scalable Peer-to-peer.
Application-Aware Memory Channel Partitioning † Sai Prashanth Muralidhara § Lavanya Subramanian † † Onur Mutlu † Mahmut Kandemir § ‡ Thomas Moscibroda.
1 A Hybrid Adaptive Feedback Based Prefetcher Santhosh Verma, David Koppelman and Lu Peng Louisiana State University.
Managing Wire Delay in Large CMP Caches Bradford M. Beckmann David A. Wood Multifacet Project University of Wisconsin-Madison MICRO /8/04.
1 Improving Direct-Mapped Cache Performance by the Addition of a Small Fully-Associative Cache and Prefetch Buffers By Sreemukha Kandlakunta Phani Shashank.
Consistency and Replication Chapter 7 Part II Replica Management & Consistency Protocols.
1 Storage-Aware Caching: Revisiting Caching for Heterogeneous Systems Brian Forney Andrea Arpaci-Dusseau Remzi Arpaci-Dusseau Wisconsin Network Disks University.
Latency-sensitive hashing for collaborative Web caching Presented by: Xin Qi Yong Yang 09/04/2002.
Cache Memory By JIA HUANG. "Computer Science has only three ideas: cache, hash, trash.“ - Greg Ganger, CMU.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
Lecture 17 I/O Optimization. Disk Organization Tracks: concentric rings around disk surface Sectors: arc of track, minimum unit of transfer Cylinder:
Improving Proxy Cache Performance: Analysis of Three Replacement Policies Dilley, J.; Arlitt, M. A journal paper of IEEE Internet Computing, Volume: 3.
ISCSI Performance in Integrated LAN/SAN Environment Li Yin U.C. Berkeley.
Energy Efficient Prefetching – from models to Implementation 6/19/ Adam Manzanares and Xiao Qin Department of Computer Science and Software Engineering.
Lecture 3: A Case for RAID (Part 1) Prof. Shahram Ghandeharizadeh Computer Science Department University of Southern California.
Locality-Aware Request Distribution in Cluster-based Network Servers 1. Introduction and Motivation --- Why have this idea? 2. Strategies --- How to implement?
Streaming Video Gabriel Nell UC Berkeley. Outline Scalable MPEG-4 video – Layered coding method – Integrated transport-decoder buffer model RAP streaming.
A Hybrid Caching Strategy for Streaming Media Files Jussara M. Almeida Derek L. Eager Mary K. Vernon University of Wisconsin-Madison University of Saskatchewan.
Chapter 4 Memory Management 4.1 Basic memory management 4.2 Swapping
CSCI2413 Lecture 6 Operating Systems Memory Management 2 phones off (please)
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts, Amherst Operating Systems CMPSCI 377 Lecture.
Introduction to Database Systems 1 The Storage Hierarchy and Magnetic Disks Storage Technology: Topic 1.
Microsoft Load Balancing and Clustering. Outline Introduction Load balancing Clustering.
Basics of Operating Systems March 4, 2001 Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard.
1 Ekow J. Otoo Frank Olken Arie Shoshani Adaptive File Caching in Distributed Systems.
Achieving Load Balance and Effective Caching in Clustered Web Servers Richard B. Bunt Derek L. Eager Gregory M. Oster Carey L. Williamson Department of.
Research on cloud computing application in the peer-to-peer based video-on-demand systems Speaker : 吳靖緯 MA0G rd International Workshop.
DISKS IS421. DISK  A disk consists of Read/write head, and arm  A platter is divided into Tracks and sector  The R/W heads can R/W at the same time.
Redundant Array of Independent Disks
Toolbox for Dimensioning Windows Storage Systems Jalil Boukhobza, Claude Timsit 12/09/2006 Versailles Saint Quentin University.
SEDA: An Architecture for Well-Conditioned, Scalable Internet Services
1 Cache Me If You Can. NUS.SOC.CS5248 OOI WEI TSANG 2 You Are Here Network Encoder Sender Middlebox Receiver Decoder.
Lecture 19: Virtual Memory
Scalable Web Server on Heterogeneous Cluster CHEN Ge.
The Design and Implementation of Log-Structure File System M. Rosenblum and J. Ousterhout.
Bi-Hadoop: Extending Hadoop To Improve Support For Binary-Input Applications Xiao Yu and Bo Hong School of Electrical and Computer Engineering Georgia.
Exploiting Gray-Box Knowledge of Buffer Cache Management Nathan C. Burnett, John Bent, Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau University of.
Managing Distributed, Shared L2 Caches through OS-Level Page Allocation Jason Bosko March 5 th, 2008 Based on “Managing Distributed, Shared L2 Caches through.
Deconstructing Storage Arrays Timothy E. Denehy, John Bent, Florentina I. Popovici, Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau University of Wisconsin,
1 Admission Control and Request Scheduling in E-Commerce Web Sites Sameh Elnikety, EPFL Erich Nahum, IBM Watson John Tracey, IBM Watson Willy Zwaenepoel,
Latency Reduction Techniques for Remote Memory Access in ANEMONE Mark Lewandowski Department of Computer Science Florida State University.
Efficient Cache Structures of IP Routers to Provide Policy-Based Services Graduate School of Engineering Osaka City University
Improving Disk Throughput in Data-Intensive Servers Enrique V. Carrera and Ricardo Bianchini Department of Computer Science Rutgers University.
Introduction: Memory Management 2 Ideally programmers want memory that is large fast non volatile Memory hierarchy small amount of fast, expensive memory.
Demand Paging Reference Reference on UNIX memory management
MiddleMan: A Video Caching Proxy Server NOSSDAV 2000 Brian Smith Department of Computer Science Cornell University Ithaca, NY Soam Acharya Inktomi Corporation.
Virtual Memory Questions answered in this lecture: How to run process when not enough physical memory? When should a page be moved from disk to memory?
1 CEG 2400 Fall 2012 Network Servers. 2 Network Servers Critical Network servers – Contain redundant components Power supplies Fans Memory CPU Hard Drives.
1 Memory Management Adapted From Modern Operating Systems, Andrew S. Tanenbaum.
1 Evaluation of Cooperative Web Caching with Web Polygraph Ping Du and Jaspal Subhlok Department of Computer Science University of Houston presented at.
CS203 – Advanced Computer Architecture Virtual Memory.
Informed Prefetching and Caching R. Hugo Patterson, Garth A. Gibson, Eka Ginting, Daniel Stodolsky, Jim Zelenka.
COS 318: Operating Systems Virtual Memory Paging.
Lecture: Large Caches, Virtual Memory
Memory Management for Scalable Web Data Servers
Storage Virtualization
Auburn University COMP7500 Advanced Operating Systems I/O-Aware Load Balancing Techniques (2) Dr. Xiao Qin Auburn University.
Cache memory Direct Cache Memory Associate Cache Memory
Part V Memory System Design
Cluster Resource Management: A Scalable Approach
Cooperative Caching, Simplified
Admission Control and Request Scheduling in E-Commerce Web Sites
Qingbo Zhu, Asim Shankar and Yuanyuan Zhou
Virtual Memory: Working Sets
COMP755 Advanced Operating Systems
Presentation transcript:

1 Storage-Aware Caching: Revisiting Caching for Heterogeneous Storage Systems (Fast’02) Brian Forney Andrea Arpaci-Dusseau Remzi Arpaci-Dusseau Wisconsin Network Disks University of Wisconsin at Madison Presented by Enhua Tan July 1, 2005

2 Circa 1970 OS policy Intense research period in policies Wide variety developed; many used today –Examples: Clock, LRU Simple storage environment –Focus: workload –Assumption: consistent retrieval cost buffer cache App

3 Today Rich storage environment –Devices attached in many ways –More devices –Increased device sophistication Mismatch: Need to reevaluate LAN WAN policy buffer cache App

4 Problem illustration Uniform workload Two disks LRU policy Slow disk is bottleneck Problem: Policy is oblivious –Does not filter well fastslow

5 General solution Integrate workload and device performance –Balance work across devices –Work: cumulative delay Cannot throw out: –Existing non-cost aware policy research –Existing caching software

6 Existing cost-aware algorithm LANDLORD –Cost-aware, based on LRU / FIFO –Same as web caching algorithm –Integration problems with modern OSes

7 LANDLORD (LRU version) Each object associates with a cost L –Initially set to H: the retrieval cost divided by the size of the object –Evict the object with lowest L; and decrementing all remaining pages by this L –Upon reference, L restored to H When all H values are the same, equal to strict LRU

8 Solution Overview Generic partitioning framework –Old idea –One-to-one mapping: device  partition –Each partition has cost-oblivious policy –Adjust partition sizes Advantages –Aggregates performance information –Easily and quickly adapts to workload and device performance changes –Integrates well with existing software Key: How to pick the partition sizes

9 Outline Motivation Solution overview Taxonomy Dynamic partitioning algorithm Evaluation Summary

10 Partitioning algorithms Static –Pro: Simple –Con: Wasteful – cannot balance work for all workloads Dynamic –Adapts to workload Hotspots Access pattern changes –Handles device performance faults Used dynamic

11 Algorithm: Overview 1.Observe: Determine per-device cumulative delay 2.Act: Repartition cache 3.Save & reset: Clear last W requests Observe Act Save & reset

12 Algorithm: Observe Want accurate system balance view Record per-device cumulative delay for last W (window size) completed disk requests –At client –Includes network time (and the remote disk service time)

13 Algorithm: Act Categorize each partition –Page consumers Cumulative delay above threshold  possible bottleneck –Page suppliers Cumulative delay below mean  lose pages without decreasing performance –Neither Always have page suppliers if there are page consumers Page consumerPage supplierNeither Page consumerPage supplierNeither Before After

14 Page consumers How many pages? Depends on state: –Warming Cumulative delay increasing Aggressively add pages: reduce queuing –Cooling Cumulative delay decreasing Do nothing; naturally decreases –Warm Cumulative delay constant Conservatively add pages

15 Three parameters W: window size –W = 1000 provides sufficient smoothing and feedback T: threshold –T = 5, can detect changes in relative wait time that need correction I: base increment amount –Should be small for exponential correction –0.2% of the cache works well

16 Dynamic partitioning Eager –Immediately change partition sizes –Pro: Matches observation –Con: Some pages temporarily unused Lazy –Change partition sizes on demand –Pro: Easier to implement –Con: May cause over correction

17 Partitioned-Clock algorithm Each page has a use bit like the Clock algorithm Also has the partition number that it belongs Victim will be selected with the matched partition number for replacement A separate clock hand for each partition helps

18 Lazy Clock When searching for a replacement –Only those pages belonging to the victim’s partition should have their use bits cleared Uses inverse lottery scheduling to pick victims among partitions –Each partition is given a number of tickets in inverse proportion to its desired size

19 Outline Motivation Solution overview Taxonomy Dynamic partitioning algorithm Evaluation Summary

20 Evaluation methodology Simulator Workloads: synthetic and web Caching, RAID-0 (non-redundant) client LogGP network With endpoint contention Disks 16 IBM 9LZX (9.1GB; SCSI; 10,020 RPM) First-order model: queuing, seek time & rotational time

21 LogGP Model 0.5μs 0.3μs 76ns 1/G=10 Gb/s

22 Evaluation methodology Introduced performance heterogeneity –Disk aging Used current technology trends –Seek and rotation: 10% decrease/year –Bandwidth: 40% increase/year Scenarios –Single disk degradation: Single disk, multiple ages –Incremental upgrades: Multiple disks, two ages –Fault injection Understand dynamic device performance change and device sharing effects

23 Evaluated policies Cost-oblivious: LRU, Clock Storage-aware: Eager LRU, Lazy LRU; Lazy Clock, Eager Clock Comparison: LANDLORD

24 A motivating example LRU: 55MB/s -> 11MB/s

25 Static partitioning Statically set: the ratio of partition sizes ∞ the ratio of the expected service time of each disk

26 Synthetic Workload: Read requests, exponentially distributed around 34 KB, uniform load across disks A single slow disk greatly impacts performance. Eager LRU, Lazy LRU, Lazy Clock, and LANDLORD robust as slow disk performance degrades

27 Multiple old disks

28 Dynamic fault Relatively stable partition sizes found within 75 seconds Eager LRU/Clock have the highest bandwidth

29 Web Workload: 1 day image server trace at UC Berkeley, reads & writes Eager LRU and LANDLORD are the most robust.

30 Web without writes Workload: Web workload where writes are replaced with reads Eager LRU and LANDLORD are the most robust.

31 Summary Problem: Mismatch between storage environment and cache policy –Current buffer cache policies lack device information Policies need to include storage environment information Solution: Generic partitioning framework –Aggregates performance information –Adapts quickly –Allows for use of existing policies

32 Limitations Assumptions –Linear relationship between cache size and hit rate Doesn’t hold for workload with little locality –Rely on proper values for three parameters: window size, base increment amount, and threshold Outperform dramatically when a disk is quite slow (4~10 years old) –But is that a realistic problem with technology advancing? Should the disk be replaced rather than using more cache space to mask the lag? Break transparency: –Clients need to know there exist 16 network disks?

33 Future work Implementation in Linux Cost-benefit algorithm Study of integration with prefetching and layout

34 Follow-ups 10 citations found in Google Scholar, most are before 2003 Papers in the field of Web, Cluster, and Storage system

35 WiND project Wisconsin Network Disks Building manageable distributed storage Focus: Local-area networked storage Issues similar in wide-area