Presentation is loading. Please wait.

Presentation is loading. Please wait.

Revisiting Widely Held SSD Expectations and Rethinking System-Level Implication Myoungsoo Jung (UT Dallas) Mahmut Kandemir (PSU) The University of Texas.

Similar presentations


Presentation on theme: "Revisiting Widely Held SSD Expectations and Rethinking System-Level Implication Myoungsoo Jung (UT Dallas) Mahmut Kandemir (PSU) The University of Texas."— Presentation transcript:

1 Revisiting Widely Held SSD Expectations and Rethinking System-Level Implication Myoungsoo Jung (UT Dallas) Mahmut Kandemir (PSU) The University of Texas at Dallas Computer Architecture and Memory Systems Lab.

2 Motivation Evaluation Setup Testing Expectations on – Reads – Writes – Advanced Schemes

3 Motivation Evaluation Setup Testing Expectations on – Reads – Writes – Advanced Schemes

4 We know SSDs! Reads Writes 10x~100x better than writes Reliable (no erase) Fast random accesses GC Impacts DRAM Buffer Faster than HDD Less overheads

5 We are carefully using them!! Reads Writes Read Cache Memory Extension Read-Only Storage Burst Buffer Checkpointing Swap/Hibernation Management Virtual Memory

6 Then, why do we need to rethink? NAND Core Packaging Architecture Firmware/OS Have shrank 5x to 2x nm Less reliable / extra operations Longer latency Multiple dies and planes Package-level queue ECC engines Fast data movement interfaces Multiple channels and pipelining Queue/IO rescheduling methods Internal DRAM buffer cache Advanced mapping algorithms TRIM Background task managements

7 NAND Core Packaging Architecture Firmware/OS Read Performance Reliability on Reads Write Performance/ Background Tasks OS Supports OSAdminHPCApp

8 Motivation Evaluation Setup Testing Expectations on – Reads – Writes – Advanced Schemes

9 SSD Test-Beds DRAM-less SSD Over-provisioned SSD Multi-core SSD High-reliable SSD

10 Tools Intel Iometer LeCroy Sierra M6-1 SATA protocol analyzer In-house AHCI minport driver

11 NAND Core Packaging Architecture Firmware/OS Read Performance Reliability on Reads Write Performance/ Background Tasks OS Supports

12 Are SSDs good for applications that exhibit mostly random reads? Performance values with random read accesses are worse than other types of access patterns and operations Observation

13 Are SSDs good for applications that exhibit mostly random reads? [SSD-L][SSD-C][SSD-Z] 39%59%23%

14 Are SSDs good for applications that exhibit mostly random reads? [SSD-L][SSD-C][SSD-Z] 23% ~ 59% of latency values with random reads

15 Are SSDs good for applications that exhibit mostly random reads? HOST No! Why? Address translation for reads/ address remapping for writes

16 Are SSDs good for applications that exhibit mostly random reads? Rand. writes  Seq. writes (by remapping addresses on writes) Lack of internal parallelism on random reads – Resource conflicts on random accesses No! Why?

17 Can we achieve sustained read performance with seq. accesses? Sequential read performance characteristics get worse with aging and as I/O requests are being processed Observation

18 Can we achieve sustained read performance with seq. accesses? [SSD-L][SSD-C][SSD-Z] Most I/O requests are served in 200 us

19 Can we achieve sustained read performance with seq. accesses? [SSD-L][SSD-C][SSD-Z] 2x ~ 3x worse than pristine state SSDs

20 Can we achieve sustained read performance with seq. accesses? No! Why? We believe that this performance degradation on reads is mainly caused by – Fragmented physical data layout

21 NAND Core Packaging Architecture Firmware/OS Read Performance Reliability on Reads Write Performance/ Background Tasks OS Supports

22 Do program/erase (PE) cycles of SSDs increase during read only operations? Read requests can shorten the SSDs lifespan PE cycles on reads are not well managed by underlying firmware Observation

23 Do program/erase (PE) cycles of SSDs increase during read only operations? [PE cycles on seq. access pattern][PE cycles on rand. access pattern] Reach 1% ~ 50% of PE cycles on writes12x247x 1 hour I/O services per evaluation round

24 Do program/erase (PE) cycles of SSDs increase during read only operations? Unfortunately, Yes. Why? 0V V pass Can gain charge (need to perform an erase)

25 NAND Core Packaging Architecture Firmware/OS Read Performance Reliability on Reads Write Performance/ Background Tasks OS Supports

26 TRIM INVALID VALID FILE AFILE B INVALID VALID TRIM Can be wiped out

27 Can TRIM command reduce GC overheads? SSDs do not trim all the data SSD performance with TRIM command is strongly related to the TRIM command submission patterns (SEQ-TRIM vs. RND-TRIM) Observation

28 Can TRIM command reduce GC overheads? [SSD-Z][SSD-C] SEQ-TRIM = Pristine RND-TRIM = NON-TRIM Pristine (Trimmed SSD = pristine state SSD??)

29 Can TRIM command reduce GC overheads? [SSD-Z][SSD-C]

30 Please take a look!! There exist 25 questions we tested In the paper, we have 59 different types of empirical evaluation including : – Overheads on runtime bad block managements, – ECC overheads – Physical data layout performance impact – DRAM caching impact – Background tasks and etc.

31 Thank you!

32 Backup

33 NAND Core Packaging Architecture Firmware/OS Read Performance Reliability on Reads Write Performance OS Supports

34 How much impact does the worst-case latency have on modern SSDs? The worst-case latencies on fully-utilized SSDs are much worse than that of HDDs

35 How much impact does the worst-case latency have on modern SSDs? 2x ~ 173x better than Enterprise-scale HDD12x ~ 17x worse than 10K HDD [Average latency -- SSDs vs. enterprise HDD][Worst-case latency -- SSDs vs. enterprise HDD]

36 What is the correlation between the worst-case latency and throughput? SSD latency and bandwidth become 11x and 3x respectively worse than normal writes Performance degradation on the writes is not recovered even after many GCs are executed Observation

37 What is the correlation between the worst-case latency and throughput? [SSD-L][SSD-C] Recovered immediately

38 What is the correlation between the worst-case latency and throughput? [SSD-L][SSD-C] Write-cliff Performance is not recovered

39 What is the correlation between the worst-case latency and throughput? Write Cliff. Why? VALID INVALID VALID INVALID VALID INVALID VALID Update Block Data Block New Block Free Block Pool The range of random access addresses is not covered by the reclaimed block

40 Could DRAM buffer help the firmware to reduce GC overheads? DRAM buffers – (before write cliff) offer 4x shorter latency – (after write cliff kicks in) introduce 2x ~ 16x worse latency Observation

41 Could DRAM buffer help the firmware to reduce GC overheads? [SSD-L][SSD-C] 4x better 16x worse Write-Cliff

42 Could DRAM buffer help the firmware to reduce GC overheads? Flushing of buffered data introduces large number of random accesses, which can in turn accelerate GC invocation on write-cliffs No! Why?

43 Can background tasks of current SSDs guarantee sustainable performance? 7% (1 idle hour) 0.1% (30 idle secs) [SSD-L BGC][SSD-C BFLUSH]

44 Why can’t BGC help with the foreground tasks? Endurance characteristics Block erasure acceleration Power consumption problem on idle

45 Does TRIM command incur any overheads? Moderns SSDs require much longer latencies to trim data than normal I/O operation would take – I-TRIM: data invalidation based on address an d prompt response – E-TRIM: block erasure in real-time

46 Does TRIM command incur any overheads? [SSD-L][SSD-Z]

47 Does TRIM command incur any overheads? [SSD-A][SSD-C]

48 What types of background tasks exist in modern SSDs? BFLUSH: flushing in-memory data into flush medium, creating extra room, which can be used to buffer the new incoming I/O req. BGC: performed GCs in the background

49 What types of background tasks exist in modern SSDs? [Cache-off SSD][Cache-on SSD]

50 What types of background tasks exist in modern SSDs? [Cache-off SSD][Cache-on SSD]

51 What types of background tasks exist in modern SSDs? Excluding BFLUSH, there is only one SSD (SSD-L) perform BGC – There exist several benchmark results published assuming BGC, and even SSD maker indicated that they alleviate GC overheads by utilizing idle times

52 Read Overheads ECC Recovery Runtime Bad Block Management


Download ppt "Revisiting Widely Held SSD Expectations and Rethinking System-Level Implication Myoungsoo Jung (UT Dallas) Mahmut Kandemir (PSU) The University of Texas."

Similar presentations


Ads by Google