1 / 22

Embedded Lab. Kim Sewoog

Understanding Intrinsic Characteristics and System Implications of Flash Memory based Solid State Drives. Feng Chen, David A. Koufaty, and Xiaodong Zhang 2009 ACM SIGMETRICS/Performance. Embedded Lab. Kim Sewoog. Motivation. Solid State Drive(SSD) “pivotal technology”

thimba
Download Presentation

Embedded Lab. Kim Sewoog

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Understanding Intrinsic Characteristics and System Implications of Flash Memory based Solid State Drives Feng Chen, David A. Koufaty, and Xiaodong Zhang 2009 ACM SIGMETRICS/Performance Embedded Lab. Kim Sewoog

  2. Motivation • Solid State Drive(SSD) • “pivotal technology” • http://www.youtube.com/watch?v=96dWOEa4Djs • http://www.youtube.com/watch?v=pJMGAdpCLVg&feature=fvw HDD SSD

  3. SSD Block Diagram • SSD Internals • Array of flash memory packages • Flash Translation Layer(FTL) in the SSD controller • Hybrid mapping, Over-Provisioning, • Using the original host interface(SATA) for compatibility • Interleaving, DMA for data processing, low power comsumption, etc… < SSD Block Diagram >

  4. Belief and betrayal of SSD • The common belief • Accesses to SSD are uncorrelated with access patterns! • Betrayal • Unexpected performance issues • Uncertain behavior • SSD is not just another ‘faster’ disk! • We need to understand • intrinsic limits • unexpected performance behavior

  5. Experiments and analysis • 7 questions • Access Patterns of workloads • Random writes • Caching for optimizing performance • Interference between read and write operations • Background operation effects • Internal fragmentation • System implications

  6. Measurement environment • Solid State Drives • Experiment System • DellTM PowerEdgeTM 1900 server • Benchmarks • Intel® Open Storage Toolkit : generate various types of I/O workloads • blktrace / blkparse : trace and parse I/O activities (completion event)

  7. General Tests • Bandwidths • 4 distinct workloads : Random/Sequential Read/Write • Random workload : 4KB request size, 1024MB storage space • Sequential workload : 256KB request size • 32 parallel jobs, direct I/O, 30 seconds • Comparison with harddisk (WD1600JS)

  8. Micro-benchmark Workloads • Various combinations of factors • 3 access patterns : Sequential / Random / Stride • 10 seconds running, one job, synchronous I/O • Full utilization for initialization (using 256KB sequential write)

  9. Distribution of access latencies • Read operations on the SSD • SSD-L : uniform distribution of latencies • SSD-M/H : non-uniform distribution of latencies • Reason : • specification • a readahead mechanism • multi-plane operations • interleaving 65% 65%

  10. Distribution of access latencies • Write operations on the SSD • SSD-L : non-uniform distribution of latencies • SSD-M/H : uniform distribution of latencies • Independent of workload access patterns 88% over 90%

  11. Distribution of access latencies • Sequential vs. non-sequential writes on SSD-L • (seems to) use a small buffer • Sequential write : stripped • Non-sequential write : no-stripped 64 requests from buffer to register initiate the prog. process & write data into flash memory in parallel from host to buffer

  12. Disk cache effect of SSDs • Large RAM cache(disk cache) • Using hdparm tool to enable and disable the disk cache • Disk cache off : increase of latencies both SSD-M/H • Performance comparision between SSD-M/H without disk cache • SSD-H is good performance -> SLC

  13. Interference between read/write operations • Writes : high-cost internal operations • Cleaning and asynchronous write-back of dirty data from the disk cache • Negatively affect foreground read operations • Reads : competition for buffer space with writes • Break sequential patterns • 4 workload patterns • Read(n) + Write(n) • Write(n) + Read(n) • Read(n) + Write(n+1) • Read(n) + Write(n+4MB) • only non-sequential pattern • simultaneously, sequential pattern

  14. Interference between read/write operations • SSD-L • Substantial degradation • SSD-L optimizes performance for sequential writes Non-sequential write Non-shared buffer

  15. Interference between read/write operations • SSD-M/H random read latency asynchronouswrite-back readahead effect

  16. Background operation effects • Writes lead almost background operations • Sequential workload using request size of 4KB • Request type : random (50% write requests) • interval time : 10ms disk cache Background operations are completed during the idle periods !

  17. Workload randomness effects • Randomness effects (only SSD-L) • Random write : random range from 1GB to 30GB • Stride write : stride step from 4KB to 128MB • Request size : 4KB 16MB: individual mapping unit metadata synchronization log block merging

  18. Internal fragmentation • Internal fragmentation • Invalid pages in flash memory blocks • Cleaning efficiency : block num x valid page num - read/write, block num - erase • Non-continuous physical pages : readahead mechanism is not effective Over-provisioning (25% of the SSD capacity) No readahead effect

  19. Conclusion • Many well understood features of SSDs • Many unexpected performance issues • Access Patterns of workloads • Random writes • Caching for optimizing performance • Interference between read and write operations • Background operation effects • Internal fragmentation • System implications

  20. Reference • N. Agrawal, V. Prabhakaran, T. Wobber, J. D. Davis, M. Manasse, and R. Panigrahy. “Design tradeoffs for SSD performance”, In Proc. of USENIX’08, 2008. • Blktrace. http://linux.die.net/man/8/blktrace. • S. Lee, D. Park, T. Chung, D. Lee, S. Park, and H. Song. “A log buffer based flash translation layer using fully associative sector translation”.In IEEE Tran. on Embedded Computing Systems, 2007. • M. Mesnier. Intel open storage toolkit. http://www.sourceforge.org/projects/intel-iscsi. • V. Prabhakaran, T. L. Rodeheffeer, and L. Zhou. “Transactional flash.”In Proc. of OSDI’08, 2008.

  21. Thank you !

More Related