ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS De-indirection for Flash-based SSDs with Nameless Write

Yiying Zhang, Leo Prasath Arulraj, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci- Dusseau University of Wisconsin - Madison ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS “All Problems in computer science can be solved by another level of indirection.” – Butler Lampson o Indirection • the ability to reference something using a name, reference, or container instead of the value itself. • Example: value (A)<- pointer (*B) <- pointer of pointer (**C) o Indirection in computer systems • Virtual memory: virtual to physical • SSDs: logical to SSD physical address ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS “…… But that usually will create another problem.” –David Wheeler Challenges: 1. Extra translation/ search time Examples: virtual-physical memory address (extra translation lookaside table ) 2. Extra space overhead Examples: logical-physical address mapping table (1TB needs 1GB table) ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS Indirection in Flash-Based SSDs • Mapping from logical to physical address (L->P) o Advantages: • Hiding erase-before-write • Able to perform wear leveling o Disadvantages: • Occupy extra RAM space to maintain indirection table • Performance cost of garbage collection • Performance impact on random writes ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS De-indirection with Nameless Write One solution is De-indirection. • Remove logical-to-physical mapping in SSDs; • Instead, store physical addresses in file system; New interface: Nameless Write • Write without a name (logical address) • Device allocates and returns physical address • File system stores physical address Advantages: Reduces space and performance cost ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS Details of Nameless Write Interfaces o Nameless Write: • Write only data and no name o Physical Read • Read using physical address o Free/Trim • Invalidates block at physical address ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS More conditions to take into account o P1: Overwrite a data block in a file ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS P1: Segment Address Space Example ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS Reconsider Overwrite Condition ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS More conditions to take into account o P2: Data Migration During Wear Leveling • SSD moves data to distributed block for balanced P/E cycles; o Traditional Wear Leveling • Data migration doesn’t need any operation on file system; • In device, only changing L-P mapping table is enough; o Wear Leveling with nameless writing • File system needs to be informed • Only address change in the physical space ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS o P2: Data Migration During Wear Leveling o Solution: add new interface Migration Callbacks • Step1: add temporary remapping table • Step2: read data from old address and remap it to new address; • Step3: inform file system by committing old physical Address, new address and metadata; • Step4: File system processes callbacks in background; ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS More conditions to take into account o P3: Locating Metadata structures • In callbacks and recovery, metadata is necessary; o Solution: Associated Metadata . Small amount of metadata used to locate metadata . e.g. Inode number, inode generation number, block offset . Sent with nameless writes and migration callbacks . Stored adjacent to data pages on device, e.g. OOB area ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS More conditions to take into account o P4: Garbage Collection • Reclaim invalid data pages and migrate live ones to a new location; o Traditional Garbage Collection • Data migration doesn’t need any operation on file system; • In device, only changing L-P mapping table is enough; o In-Place Garbage Collection • Don’t want to change physical address of live data pages • Extra battery-backed cache to hold data • May waste space in block after garbage collection ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS Evaluation o FTLs studied • Page mapping: log-structured allocation ideal in performance, unrealistic in space • Hybrid mapping: small page-mapped area+ block-mapped area • Nameless-writing ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS Indirection Table Space Cost o Mapping table sizes for typical file system images ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS Micro-Benchmark Performance o Sequential and sustained 4KB random write ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS Micro-Benchmark Performance o Varmail, FileServer, and WebServer ERIK JONSSON SCHOOL OF ENGINEERING AND COMPUTER SCIENCE UNIVERSITY OF TEXAS AT DALLAS Some critical issues o Trade-off of “in-place garbage collection” between waste space and waste time