A PRAM and NAND Flash Hybrid Architecture for High-Performance Embedded Storage Subsystems



Similar documents
Exploiting Self-Adaptive, 2-Way Hybrid File Allocation Algorithm

Implementation of Buffer Cache Simulator for Hybrid Main Memory and Flash Memory Storages

Developing NAND-memory SSD based Hybrid Filesystem

FRASH: Exploiting Storage Class Memory in Hybrid File System for Hierarchical Storage

1 / 25. CS 137: File Systems. Persistent Solid-State Storage

UBI with Logging. Brijesh Singh Samsung, India Rohit Vijay Dongre Samsung, India

Managing the evolution of Flash : beyond memory to storage

NAND Flash & Storage Media

Flash-Friendly File System (F2FS)

In-Block Level Redundancy Management for Flash Storage System

SALSA Flash-Optimized Software-Defined Storage

File Systems for Flash Memories. Marcela Zuluaga Sebastian Isaza Dante Rodriguez

Indexing on Solid State Drives based on Flash Memory

Linux kernel support to exploit phase change memory

Speeding Up Cloud/Server Applications Using Flash Memory

Buffer-Aware Garbage Collection for NAND Flash Memory-Based Storage Systems

Important Differences Between Consumer and Enterprise Flash Architectures

Linux flash file systems JFFS2 vs UBIFS

File System & Device Drive. Overview of Mass Storage Structure. Moving head Disk Mechanism. HDD Pictures 11/13/2014. CS341: Operating System

A NOR Emulation Strategy over NAND Flash Memory

Price/performance Modern Memory Hierarchy

Caching Mechanisms for Mobile and IOT Devices

An Overview of Flash Storage for Databases

COS 318: Operating Systems. Storage Devices. Kai Li and Andy Bavier Computer Science Department Princeton University

NAND Flash FAQ. Eureka Technology. apn5_87. NAND Flash FAQ

On Benchmarking Embedded Linux Flash File Systems

Nasir Memon Polytechnic Institute of NYU

Recovery Protocols For Flash File Systems

Chapter Introduction. Storage and Other I/O Topics. p. 570( 頁 585) Fig I/O devices can be characterized by. I/O bus connections

NAND Flash-based Disk Cache Using SLC/MLC Combined Flash Memory

Flash Memory. Jian-Jia Chen (Slides are based on Yuan-Hao Chang) TU Dortmund Informatik 12 Germany 2015 年 01 月 27 日. technische universität dortmund

NAND Flash Architecture and Specification Trends

Solid State Technology What s New?

Data Storage Framework on Flash Memory using Object-based Storage Model

p-oftl: An Object-based Semantic-aware Parallel Flash Translation Layer

A Data De-duplication Access Framework for Solid State Drives

hybridfs: Integrating NAND Flash-Based SSD and HDD for Hybrid File System

An Exploration of Hybrid Hard Disk Designs Using an Extensible Simulator

Managing Storage Space in a Flash and Disk Hybrid Storage System

Accelerating Server Storage Performance on Lenovo ThinkServer

Object-based SCM: An Efficient Interface for Storage Class Memories

HybridLog: an Efficient Hybrid-Mapped Flash Translation Layer for Modern NAND Flash Memory

Implementation and Challenging Issues of Flash-Memory Storage Systems

COS 318: Operating Systems. Storage Devices. Kai Li Computer Science Department Princeton University. (

Samsung Solid State Drive RAPID mode

Computer Engineering and Systems Group Electrical and Computer Engineering SCMFS: A File System for Storage Class Memory

DFS: A File System for Virtualized Flash Storage

A Study of Application Performance with Non-Volatile Main Memory

Bright Idea: GE s Storage Performance Best Practices Brian W. Walker

Advances in Flash Memory Technology & System Architecture to Achieve Savings in Data Center Power and TCO

Empirical Inspection of IO subsystem for Flash Storage Device at the aspect of discard

Disks and RAID. Profs. Bracy and Van Renesse. based on slides by Prof. Sirer

On Benchmarking Popular File Systems

The Evolving Role of Flash in Memory Subsystems. Greg Komoto Intel Corporation Flash Memory Group

Design of a NAND Flash Memory File System to Improve System Boot Time

Best Practices for Optimizing SQL Server Database Performance with the LSI WarpDrive Acceleration Card

Rugged & Reliable Data Storage Solid-State State Flash Disk overview

Offline Deduplication for Solid State Disk Using a Lightweight Hash Algorithm

An Analysis on Empirical Performance of SSD-based RAID

File System Management

MCF54418 NAND Flash Controller

Solid State Drive Architecture

Low Cost Power Failure Protection for MLC NAND Flash Storage

Understanding endurance and performance characteristics of HP solid state drives

Don t Let RAID Raid the Lifetime of Your SSD Array

Update on filesystems for flash storage

Solid State Drive Technology

Input/output (I/O) I/O devices. Performance aspects. CS/COE1541: Intro. to Computer Architecture. Input/output subsystem.

Oracle Aware Flash: Maximizing Performance and Availability for your Database

Distributed File System. MCSN N. Tonellotto Complements of Distributed Enabling Platforms

Flash 101. Violin Memory Switzerland. Violin Memory Inc. Proprietary 1

In-Memory Databases Algorithms and Data Structures on Modern Hardware. Martin Faust David Schwalb Jens Krüger Jürgen Müller

NV-DIMM: Fastest Tier in Your Storage Strategy

ADVANCED PROCESSOR ARCHITECTURES AND MEMORY ORGANISATION Lesson-17: Memory organisation, and types of memory

A Simple Virtual FAT File System for Wear-Leveling Onboard NAND Flash Memory

FlashLite: A User-Level Library to Enhance Durability of SSD for P2P File Sharing

Flash In The Enterprise

Flexible Storage Allocation

RNFTL: A Reuse-Aware NAND Flash Translation Layer for Flash Memory

Choosing the Right NAND Flash Memory Technology

Boost Database Performance with the Cisco UCS Storage Accelerator

Scaling from Datacenter to Client

Sistemas Operativos: Input/Output Disks

Flash s Role in Big Data, Past Present, and Future OBJECTIVE ANALYSIS. Jim Handy

Transcription:

1 A PRAM and NAND Flash Hybrid Architecture for High-Performance Embedded Storage Subsystems Chul Lee Software Laboratory Samsung Advanced Institute of Technology Samsung Electronics

Outline 2 Background Motivation Our methods 1.File System Metadata Separation 2.Hybrid FTL Evaluation Conclusion

Target System 3 niche

Characteristics of NVRAM (PRAM) 4 1m 100u 10u 1u NOR Flash Storage memory NAND Flash Flash memory device Erase before program Different granularity on erase and program operations Limited life time High Density (NAND) 100n 10n FeRAM MRAM SRAM PRAM DRAM Working memory Flash memory, Erase NGNVM, No erase Op. Volatile memory 1n 1M 10M 100M 1G 10G 100G Capacity (bit) NVRAM Fast read/write Byte operation (random access) No erase operation Capacity (cost) problem

PRAM vs. NAND 5 Features PRAM NAND(MLC) NAND(SLC) Interface Byte Access Page Access Page Access No erase op Need for Erase Need for Erase Endurance 1M 10K 100K Density 512M bit 128 G bit 64G bit Access time Async: 80ns 60us(page) 20us(page) Sync: 10ns Serial access:30ns Serial access:25ns Word Program Time 10us (word) 800us(page) 200us(page) Block Erase Time N/A 1.4ms 1.4ms Latency Latency PRAM 10us PRAM 1us 120us NAND MLC 800us NAND MLC PRAM 500ns 60us NAND SLC 25us PRAM async PRAM sync 200us NAND SLC Read Bytes 2KB Written Bytes 2KB

PRAM vs. NAND 6 Strength PRAM Byte access XIP No erase/in-place update Low latency Endurance Weakness Density Seq. Write speed NAND Large capacity Write endurance Fast Seq. I/O Erase op. FTL Wear-Leveling Garbage-collection Page/block access

Related Work 7 Arch. Based on NVRAM Usage NVRAM Mgmt. Disk(NAND) Usage Reliability Year HeRMES MRAM + Disk Compressed Metadata Write buffer 2001 Conquest BBDRAM + Disk FFS-like Metadata Small File data Shared Library Slab/Zone/ Page allocator Large File data Soft update Consistency checker 2002 MRAMFS MRAM only Compressed Metadata 2004 Greenan et. al, MRAM + Disk LiFS Metadata MRAM allocator File data Online consistency checker EVENODD(ECC) MMU Page protection (H/W) 2006 PRIMS MRAM + Disk LiFS Metadata MRAM allocator File data Online consistency checker EVENODD(ECC) Erasure-encoded Logstructure (S/W) 2007 FRASH FRAM + NAND YAFFS Metadata (replication) RAW Metadata File data 2007 MiNVFS FRAM + NAND PFFS PRAM + NAND YAFFS Metadata BGET Memory allocator File data 2007 FFS-like Metadata RAW File data 2008

Interoperability Matters. 8 Application Application File system (FAT) USB Protocol Stack Native File system WL GC FTL Block device driver FTL Low level device driver Low level device driver

Metadata trickle down to PRAM. 9 Application Application` User Data User Data File system (FAT) User Data + File system (FAT) FS Meta Data Block device driver Hybrid block device driver (Device mapper) FS Data User Data FTL FS Data FS Meta Data User Data Selective Programming Hybrid FTL + FTL Meta Low level device driver (LLD) User Data LDD NAND FTL Meta LDD PRAM

10 Approach in File System Level FSMS (File System Metadata Separation)

File System Metadata Separation (FSMS) Separate File System Meta data [FAT,DIR,Log] from NAND Flash Store FS Metadata on PRAM à Decrease random access to FTL Only the user data will be stored on NAND flash Random Access decrement -> FTL overhead decrease -> Performance and life span of NAND flash increase 11

Selective Programming 12 Selectively programming programs only the modified words among metadata block. On average, only 16 % of one metadata block is changed Frequency

13 Approach in Block Device Level hftl (PRAM+NAND hybrid storage FTL)

Implementation of hybrid FTL PRAM, NAND Layout No scanning is required. 14

Implementation of hybrid FTL 15 Full page mapping

Evaluation 16 Workload Synthesized seq./ran. workloads IOzone Metrics Throughputs Erase counts for life span DRAM requirement for the implementation cost Comparison 1. Log block FTL (LBFTL) 2. LBFTL + FSMS, 3. hftl, 4. hftl+fsms Environment CPU S3C2413, 200MHz PRAM 64MB (KPS1215EZM) NAND 1GB MLC (K9G8G08U0M) FS/OS TFS4/Nucleus RTOS NAND PRAM

LLD, FTL-Level Evaluation 17 LLD (Low Level Device driver) Read: 4.25MB/s, Write 1.7MB/s FTL Sequential Read: 4.16MB/s (LB-FTL, hftl Similar) Random Read: 4.09MB/s (LB-FTL, hftl Similar) Sequential Write: 1.62MB/s (LB-FTL, hftl Similar) Random Write : Throughput (KB/s) LLD Read LLD Write Random read Random write x42

File System Level Evaluations 18 IOzone benchmark for Sequential I/O 4,500 4,000 3,500 3,000 2,500 2,000 1,500 1,000 500 1,600 1,400 1,200 1,000 800 600 400 200 Schemes with FSMS Schemes without FSMS - 8 16 32 64 128 256 512 1KB 2KB - 8 16 32 64 128 256 512 1KB 2KB

File System Level Evaluations 19 IOzone benchmark for Random I/O Schemes with hftl Schemes without hftl

Life Span and Implementation Cost Life Span 20 Implementation Cost Required PRAM for 1GB NAND: For FSMS : 2 MB For hftl : 2.5 MB

Conclusion 21 Industrial assumption/viewpoint Embedded systems are mostly handsets and digital gadgets. Storage systems should be FAT-compatible. Contributions Two heterogeneous storage memories, PRAM and NAND flash, are combined in a synergetic way. Our two schemes have the metadata trickled down to PRAM instead of NAND. FSMS: The hybrid block device driver locates filesystem s metadata in PRAM hftl: The hybrid FTL locates all the FTL-related metadata in PRAM. It enabled full-page mapping. Further work Scalability for large NAND flash storage PRAM Reliability

References 22 HeRMES Conquest MRAMFS Greenan et. al, PRIMS FRASH MiNVFS PFFS Miller, E.L. Brandt, S.A. Long, D.D.E. HeRMES: high-performance reliable MRAM-enabled storage Hot Topics in Operating Systems, 2001. Proceedings of the Eighth Workshop on Publication Date: 20-22 May 2001 Wang, A. A., Kuenning, G., Reiher, P., and Popek, G. 2006. The Conquest file system: Better performance through a disk/persistent-ram hybrid design. Trans. Storage 2, 3 (Aug. 2006), 309-348. Nathan K.Edel, Deepa Tuteja, Ethan L.Miller, Scott A.Brandt, MRAMFS: A compressing file system for non-volatile RAM, Preceedings of the The IEEE Computer Society s 12 th Annual International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunications Systems (MASCOTS 04) Kevin Greenan, Ethan L. Miller, Reliability Mechanisms for File Systems Using Non-Volatile Memory as a Metadata Store, Proceedings of the 6th ACM & IEEE Conference on Embedded Software (EMSOFT '06), October 2006, pages 178-187 Greenan, K. M. and Miller, E. L. 2007. PRIMS: making NVRAM suitable for extremely reliable storage. In Proceedings of the 3rd Workshop on on Hot Topics in System Dependability (Edinburgh, UK). USENIX Association, Berkeley, CA, 10 Eun-ki Kim, Hyungjong Shin, Byung-gil Jeon, Seokhee Han, Jaemin Jung and Youjip Won, FRASH: Hierarchical File System for FRAM and Flash, In proceedings of International Workshop on Data Storage Device and Systems, Aug. 2007 Doh, I. H., Choi, J., Lee, D., and Noh, S. H. 2007. Exploiting non-volatile RAM to enhance flash file system performance. In Proceedings of the 7th ACM &Amp; IEEE international Conference on Embedded Software (Salzburg, Austria, September 30 - October 03, 2007). EMSOFT '07 Park, Y., Lim, S., Lee, C., and Park, K. H. 2008. PFFS: a scalable flash memory file system for the hybrid architecture of phase-change RAM and NAND flash. In Proceedings of the 2008 ACM Symposium on Applied Computing (Fortaleza, Ceara, Brazil, March 16-20, 2008). SAC '08

Logical Delete 23 Functionality of Logical Delete Remove management Overhead of the space occupied by deleted file