Title: A PRAM and NAND Flash Hybrid Architecture for HighPerformance Embedded Storage Subsystems
1A PRAM and NAND Flash Hybrid Architecture for
High-Performance Embedded Storage Subsystems
- Jin Kyu Kim, Samsung Electronics
- Hyung Gyu Lee, Samsung Electronics
- Shinho Choi, Samsung Electronics
- Kyoung Il Bahng, Samsung Electronics
2Why Hybrid Approach ?
Gasoline Engine - Gasoline price is high -
Pollution - Fuel Efficiency depends on traffic
Good for high way -Bad for heavy traffic
Fuel capacity is large
Electronic Motor Electricity price is
reasonable No pollution Good fuel
efficiency - Fuel capacity is very limited
3Era of Hybrid Approach
NAND Flash - Short life span - W Performance
depends on access Good for large sequential
access -Bad for small random access - No
support for byte access Very high density
NVRAM Long life span Good performance
Support for byte access - Low density
4Characteristics of NVRAM(PRAM)
- Flash memory device
- Erase before program
- Different granularity on erase and program
operations - Limited life time
- High Density (NAND)
- NVRAM
- Fast read/write
- Byte operation (random access)
- No erase operation
- Capacity (cost) problem
5Memory Components
6Overall Storage Hierarchy
- User data (Clusters)
- Large size data
- Sequential access pattern
- SectorUnit I/O? Appropriate for NAND property
- Meta data (Clusters)
- Small Size Data
- Frequently updated
- ? Appropriate for PRAM property
Performance Problems !
7Motivations
- In Filesystem Level
- In addition to user data, file system needs to
manage meta data - The properties of meta data degrade FTL
performance - degrade the
throughput of file system
Motivation 1
- If store FS metadata into NVRAM instead of NAND
- Decrease overhead for handling Metadata I/O
- Decrease random access I/O to FTL
- In FTL Level
- Performance and Performance stability depends on
the mapping algorithm -
- FTL performance depends on user(Filesystem)?
Access Pattern
Motivation 2
Page Mapping - High performance - High
resource consumption
Block Mapping - Low performance - Low
resource consumption
Mapping granularity
Fine granularity
Coarse granularity
If implement FTL with NVRAM ? Page Mapping
without large amount of memory memory ? Stable
against random access through fine granularity
Degree of random access
High performance
Low performance
Low
High
8Motivations
- In Filesystem Level
- In addition to user data, file system needs to
manage meta data - The properties of meta data degrade FTL
performance - degrade the
throughput of file system
Motivation 1
- If store FS metadata into NVRAM instead of NAND
- Decrease overhead for handling Metadata I/O
- Decrease random access I/O to FTL
- In FTL Level
- Performance and Performance stability depends on
the mapping algorithm
Motivation 2
Fine grained mapping FTL
Resource
Coarse grained mapping FTL
Fine grained mapping FTL with NVRAM
Performance
9Overall Scheme FSMS, hFTL
10Approach in File System Level FSMS (File System
Metadata Separation)
11File System Metadata Separation Scheme
- 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
12Approach in Block Device Level hFTL (PRAMNAND
hybrid storage FTL)
13Need for hFTL
14Implementation of hybrid FTL
15Implementation of hybrid FTL
16Performance Optimizations - 1
- Filtering between FS and PRAM device
- On the average, only 16 of one metadata block
is changed
17Performance Optimizations-2
- Functionality of Logical Delete
Remove management Overhead of the space
occupied by deleted file
18Evaluations
- Evaluation Setting
- S3C2413 CPU board
- 1 Channel, 1 NAND device support
- (MLC and SLC)
- 64MB PRAM (KPS1215EZM)
- 1GB MLC NAND (K9G8G08U0M)
- Evaluations
- Comparison Target log block FTL
- Criterion
- Performance
- LLD Layer (Low Level Device driver)
- FTL Layer (Block Device driver)
- File system Layer (TFS4)
- Life span Erase count
- Cost code and data size
NAND
PRAM
19LLD, FTL-Level Evaluation
- 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
20File System Level Evaluations
- IOzone benchmark for Sequential I/O
21File System Level Evaluations
- IOzone benchmark for Random I/O
22Life Span and Implementation Cost
- Life Span
- Implementation Cost
Required PRAM for 1GB NAND For FSMS 2
MB For hFTL 2.5 MB
23Contribution
- Summary
- Suggest SW scheme for efficient usage of
NAND/PRAM Hybrid Storage - FSMS
- hFTL
- Enhance the performance compared to NAND only
storage - FSMS, hFTL take effects orthogonally
- For, sequential write, the effects of FSMS is
larger than that of hFTL - For, random write, the effects of hFTL is larger
than that of F? - hFTLFSMS shows better performance than
LBFTL by up to 290. - hFTL shows better performance than
LBFTLFSMS. - Future work
- Aggressive optimization using NGNVMs in File
System Level - Scalability for large NAND flash storage
24NAND v.s. PRAM
In current technology, its hard to replace NAND
flash with PRAM device. However, its enough to
replace NOR flash