190 likes | 424 Views
Solid State Drive. Feb 15. NAND Flash Memory. Main storage component of Solid State Drive (SSD) USB Drive, cell phone, touch pad…. Solid State Drive (nowadays). Solid State Drive (SSD) architecture. Comparison. Comparison. Characteristics of SSD. High reliability (no moving parts)
E N D
Solid State Drive Feb 15
NAND Flash Memory • Main storage component of Solid State Drive (SSD) • USB Drive, cell phone, touch pad…
Characteristics of SSD • High reliability (no moving parts) • Small form factor • Less noise • Read/Write latency w.r.t. HDD • No seek latency • Out-of-place update • Invalidate old version, and write new version somewhere else • Invalidated version becomes garbage • HDD, in-place update • Garbage collection (GC) • Erase at the unit of block • LBN to PBN mapping (FTL) • Emulate a block device • Erase cycle limit (endurance) • Read latency 25 us • Write latency 0.25 ms • Erase latency 2.5 ms
Advantages of NAND SSD • Fast random read (25 us) • Energy efficiency • High reliability (no moving parts) • Small form factor • Less noise • Widely deployed in high-end laptops • Macbook air, ThinkPad X series, touch pad… • Increasingly deployed in enterprise environment either as a secondary cache or main storage
Disadvantages of SSD • Garbage collection (GC) problem of SSD • Stemmed from the out-of-place update characteristics • Update requests invalidate old version of pages and then write new version of these pages to a new place • Copy valid data to somewhere else (increasing number of IOs) • Garbage collection is periodically started to erase victim blocks and copy valid pages to the free blocks (slow erase: 10xW,100xR) • Blocks in the SSD have a limited number of erase cycles • 100,000 for Single Level Chip (SLC), 5,000-10,000 for Multiple Level Chip (MLC), can be as low as 3,000 • May be quickly worn out in enterprise environment • Performance is very unpredictable • Due to unpredictable triggering of the time-consuming GC process
Flash Translation Layer (FTL) • Page-mapping • Block-mapping • Log-block-mapping
Flash Translation Layer (FTL) • Page-mapping • Mapping any Logical Block Address (LBA) to any Physical Page Address (LPA) • Require huge RAM to store the mapping entries • 512GB SSD requires 4GB RAM to store the mapping table • Each mapping entry is 16 Byte, each page size is 2 KB
Flash Translation Layer (FTL) • Block-mapping • Map logical address to fixed offset of the physical address by taking module • LBN%N, N is the number of pages in each block • LBN with the same offset may conflict, high overhead
Flash Translation Layer (FTL) • Log-block-mapping
Issues about deployment • Mixing read and write degrades the performance • Bandwidth drops as more data is being written • Garbage collection • The performance becomes worse in enterprise environment • Bandwidth can drop to 20% of the bandwidth of the datasheets • Endurance • Wear out in 23 days in enterprise environment • MLC can only wear
Improve write performance • OS write caching • Flash specific file system • Drive Write Caching • Multiple concurrent erase blocks • Expensive: 200~400$ /GB
Flash File System: • ZFS, has be optimized • JFFS2