MEMS and Caching for File Systems Andy Wang COP 5611 Advanced Operating Systems.

Slides:



Advertisements
Similar presentations
Arjun Suresh S7, R College of Engineering Trivandrum.
Advertisements

Caching and Virtual Memory. Main Points Cache concept – Hardware vs. software caches When caches work and when they don’t – Spatial/temporal locality.
MEMS Based Mass Storage Systems. What is MEMS? (M)icro(E)lectric(M)echanical(S)ystems Consist of mech µ(structures, sensors, actuators), electronics,
Conquest: Preparing for Life After Disks An-I Andy Wang Geoff Kuenning, Peter Reiher, Gerald Popek.
Caching for File Systems Andy Wang COP 5611 Advanced Operating Systems.
Lecture 17 I/O Optimization. Disk Organization Tracks: concentric rings around disk surface Sectors: arc of track, minimum unit of transfer Cylinder:
1 COMP 206: Computer Architecture and Implementation Montek Singh Mon, Oct 31, 2005 Topic: Memory Hierarchy Design (HP3 Ch. 5) (Caches, Main Memory and.
CS 333 Introduction to Operating Systems Class 18 - File System Performance Jonathan Walpole Computer Science Portland State University.
Virtual Memory. Why do we need VM? Program address space: 0 – 2^32 bytes –4GB of space Physical memory available –256MB or so Multiprogramming systems.
1 Outline File Systems Implementation How disks work How to organize data (files) on disks Data structures Placement of files on disk.
File Systems Implementation. 2 Recap What we have covered: –User-level view of FS –Storing files: contiguous, linked list, memory table, FAT, I-nodes.
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Emery Berger University of Massachusetts, Amherst Operating Systems CMPSCI 377 Lecture.
Overview: Memory Memory Organization: General Issues (Hardware) –Objectives in Memory Design –Memory Types –Memory Hierarchies Memory Management (Software.
March R. Smith - University of St Thomas - Minnesota ENGR 330: Today’s Class CachesCaches Direct mapped cacheDirect mapped cache Set associative.
1 Today I/O Systems Storage. 2 I/O Devices Many different kinds of I/O devices Software that controls them: device drivers.
11/10/2005Comp 120 Fall November 10 8 classes to go! questions to me –Topics you would like covered –Things you don’t understand –Suggestions.
THE DESIGN AND IMPLEMENTATION OF A LOG-STRUCTURED FILE SYSTEM M. Rosenblum and J. K. Ousterhout University of California, Berkeley.
Introduction to Database Systems 1 The Storage Hierarchy and Magnetic Disks Storage Technology: Topic 1.
Hard Drive / Hard Disk Functions of hard disk
Maninder Kaur CACHE MEMORY 24-Nov
Caching and Virtual Memory. Main Points Cache concept – Hardware vs. software caches When caches work and when they don’t – Spatial/temporal locality.
RAID Ref: Stallings. Introduction The rate in improvement in secondary storage performance has been considerably less than the rate for processors and.
1 File Systems Chapter Files 6.2 Directories 6.3 File system implementation 6.4 Example file systems.
1 File Systems Chapter Files 6.2 Directories 6.3 File system implementation 6.4 Example file systems.
Page 19/17/2015 CSE 30341: Operating Systems Principles Optimal Algorithm  Replace page that will not be used for longest period of time  Used for measuring.
CS 153 Design of Operating Systems Spring 2015 Final Review.
THE DESIGN AND IMPLEMENTATION OF A LOG-STRUCTURED FILE SYSTEM M. Rosenblum and J. K. Ousterhout University of California, Berkeley.
Course Introduction Andy Wang COP 5611 Advanced Operating Systems.
Memory Hierarchy and Cache Memory Jennifer Tsay CS 147 Section 3 October 8, 2009.
Distributed File Systems Overview  A file system is an abstract data type – an abstraction of a storage device.  A distributed file system is available.
July 30, 2001Systems Architecture II1 Systems Architecture II (CS ) Lecture 8: Exploiting Memory Hierarchy: Virtual Memory * Jeremy R. Johnson Monday.
IT253: Computer Organization
Chapter Twelve Memory Organization
Memory and cache CPU Memory I/O. CEG 320/52010: Memory and cache2 The Memory Hierarchy Registers Primary cache Secondary cache Main memory Magnetic disk.
The Design and Implementation of Log-Structure File System M. Rosenblum and J. Ousterhout.
3-May-2006cse cache © DW Johnson and University of Washington1 Cache Memory CSE 410, Spring 2006 Computer Systems
CS 153 Design of Operating Systems Spring 2015 Lecture 21: File Systems.
Demand Paged Virtual Memory Andy Wang Operating Systems COP 4610 / CGS 5765.
DMBS Internals I. What Should a DBMS Do? Store large amounts of data Process queries efficiently Allow multiple users to access the database concurrently.
Improving Disk Throughput in Data-Intensive Servers Enrique V. Carrera and Ricardo Bianchini Department of Computer Science Rutgers University.
Multilevel Caches Microprocessors are getting faster and including a small high speed cache on the same chip.
DMBS Internals I. What Should a DBMS Do? Store large amounts of data Process queries efficiently Allow multiple users to access the database concurrently.
File System Performance CSE451 Andrew Whitaker. Ways to Improve Performance Access the disk less  Caching! Be smarter about accessing the disk  Turn.
Lecture Topics: 11/22 HW 7 File systems –block allocation Unix and NT –disk scheduling –file caches –RAID.
CDA 5155 Virtual Memory Lecture 27. Memory Hierarchy Cache (SRAM) Main Memory (DRAM) Disk Storage (Magnetic media) CostLatencyAccess.
TYPES OF MEMORY.
Memory Hierarchy Ideal memory is fast, large, and inexpensive
Jonathan Walpole Computer Science Portland State University
Processor support devices Part 2: Caches and the MESI protocol
Memory COMPUTER ARCHITECTURE
Andy Wang COP 5611 Advanced Operating Systems
Course Introduction Dr. Eggen COP 6611 Advanced Operating Systems
Andy Wang COP 5611 Advanced Operating Systems
Lesson Objectives Aims You should be able to:
Lecture 10: Buffer Manager and File Organization
Lecture 9: Data Storage and IO Models
Andy Wang Operating Systems COP 4610 / CGS 5765
Memory and cache CPU Memory I/O.
Demand Paged Virtual Memory
Andy Wang Operating Systems COP 4610 / CGS 5765
Chap. 12 Memory Organization
Andy Wang COP 5611 Advanced Operating Systems
Andy Wang COP 5611 Advanced Operating Systems
Lecture 9: Caching and Demand-Paged Virtual Memory
Andy Wang COP 5611 Advanced Operating Systems
Page Cache and Page Writeback
Sarah Diesburg Operating Systems CS 3430
Andy Wang Operating Systems COP 4610 / CGS 5765
Sarah Diesburg Operating Systems COP 4610
Presentation transcript:

MEMS and Caching for File Systems Andy Wang COP 5611 Advanced Operating Systems

[CMU PDL Lab] MEMS  MicroElectricMechnicalSystems  10 Gbytes of data in the size of a penny  100 MB – 1 GB/sec bandwidth  Access times 10x faster than today’s drives  ~100x less power than low-power HDs  Integrate storage, RAM, and processing on the same die The drive is the computer  Cost less than $10

MEMS-Based Storage Read/Write tips Read/Write tips Magnetic Media Magnetic Media Actuators

MEMS-based Storage Read/write tips Read/write tips Media Bits stored underneath each tip Bits stored underneath each tip side view

MEMS-based Storage Media Sled X Y

MEMS-based Storage Springs X Y

MEMS-based Storage Anchors attach the springs to the chip. Anchors attach the springs to the chip. Anchor X Y

MEMS-based Storage Sled is free to move Sled is free to move X Y

MEMS-based Storage Sled is free to move Sled is free to move X Y

MEMS-based Storage Springs pull sled toward center Springs pull sled toward center X Y

MEMS-based Storage X Y Springs pull sled toward center Springs pull sled toward center

MEMS-based Storage Actuators pull sled in both dimensions Actuators pull sled in both dimensions Actuator X Y

MEMS-based Storage Actuators pull sled in both dimensions Actuators pull sled in both dimensions X Y

MEMS-based Storage Actuators pull sled in both dimensions Actuators pull sled in both dimensions X Y

MEMS-based Storage Actuators pull sled in both dimensions Actuators pull sled in both dimensions X Y

MEMS-based Storage Actuators pull sled in both dimensions Actuators pull sled in both dimensions X Y

MEMS-based Storage Probe tips are fixed Probe tips are fixed Probe tip X Y

MEMS-based Storage X Y Probe tips are fixed Probe tips are fixed

MEMS-based Storage X Y Sled only moves over the area of a single square Sled only moves over the area of a single square One probe tip per square One probe tip per square Each tip accesses data at the same relative position Each tip accesses data at the same relative position

MEMS-Based Management  Similar to disk-based scheme  Dominated by transfer time  Challenges: Broken tips Slow erase cycle  ~seconds/block a cylinder group track

Caching for File Systems  Conventional role of caching Performance improvement Assumptions:  Locality  Scarcity of RAM  Shifting role of caching Shaping disk access patterns Assumptions:  Locality  Abundance of RAM

Performance Improvement  Essentially all file systems rely on caching to achieve acceptable performance  Goal is to make FS run at the memory speeds Even though most of the data is on disk

Issues in I/O Buffer Caching  Cache size  Cache replacement policy  Cache write handling  Cache-to-process data handling

Cache size  The bigger, the fewer the cache misses  More data to keep in sync with disk

What if….  RAM size = disk size?  What are some implications in terms of disk layouts? Memory dump? LFS layout?

What if….  RAM is big enough to cache all hot files  What are some implications in terms of disk layouts? Optimized for the remaining files

Cache Replacement Policy  LRU works fairly well Can use “stack of pointers” to keep track of LRU info cheaply Need to watch out for cache pollutions  LFU doesn’t work well because a block may get lots of hits, then not be used So, it takes a long time to get it out

What is the optimal policy?  MIN: Replacing a page that will not be used for the longest time… Hmm…

What if your goal is to save power?  Option 1: MIN replacement  RAM will cache the hottest data items  Disks will achieve maximum idleness… Hmm…

What if you have multiple disks?

And access patterns are skewed Access patterns

Better Off Caching Cold Disks Access patterns Spin down cold disks

Handling Writes to Cached Blocks  Write-through cache: update propagate through various levels of caches immediately  Write-back cache: delayed updates to amortize the cost of propagation

What if….  Multiple levels of caching with different speeds and sizes?  What are some tricky performance behaviors?

istory’s Mystery Puzzling Conquest Microbenchmark Numbers… Geoff Kuenning: “If Conquest is slower than ext2fs, I will toss you off of the balcony…”

With me hanging off a balcony…  Original large-file microbenchmark: one 1-MB file (Conquest in-core file)

Odd Microbenchmark Numbers  Why are random reads slower than sequential reads?

Odd Microbenchmark Numbers  Why are RAM-based FSes slower than disk-based FSes?

A Series of Hypotheses  Warm-up effect? Maybe Why do RAM-based systems warm up slower?  Bad initial states? No  Pentium III streaming I/O option? No

Effects of L2 Cache Footprints Large L2 cache footprint Small L2 cache footprint write a file sequentially footprintfile end footprint read the same file sequentially footprint flush file end file read write a file sequentially footprintfile end footprint read the same file sequentially footprint flush file end read file

LFS Sprite Microbenchmarks  Modified large-file microbenchmark: ten 1-MB files (in-core files)

What if….  Multiple levels of caching with similar characteristics? (via network)

A Cache Miss  Multiple levels of caching with similar characteristics? (via network)

A Cache Miss  Multiple levels of caching with similar characteristics? (via network) Why cache the same data twice?

What if….  A network of caches?

Cache-to-Process Data Handling  Data in buffer is destined for a user process (or came from one, on writes)  But buffers are in system space  How to get the data to the user space? Copy it Virtual memory techniques Use DMA in the first place