Presentation is loading. Please wait.

Presentation is loading. Please wait.

PARAMETER-AWARE I/O MANAGEMENT FOR SOLID STATE DISKS

Similar presentations


Presentation on theme: "PARAMETER-AWARE I/O MANAGEMENT FOR SOLID STATE DISKS"— Presentation transcript:

1 PARAMETER-AWARE I/O MANAGEMENT FOR SOLID STATE DISKS
Jaehong Kim, Sangwoon Jung, Jin-Soo Kim, Member,IEEE, and Jaehyuk Huh, IEEE

2 CONTENTS INTRODUCTION PERFOMANCE PARAMETERS IN SSDS
MEASURING THE CLUSTERED PAGE SIZE MEASURING THE CLUSTERED BLOCK SIZE MEASURING THE READ BUFFER SIZE MEASURING THE WRITE BUFFER SIZE LINUX GENERIC BLOCK LAYER OPTIMIZATION LINUX I/O SCHEDULER OPTIMIZATION PERFORMANCE EVALUATION CONCLUSION

3 introduction A Solid-State Disk (SSD) is a data storage device that emulates a hard disk drive (HDD) there are no moving parts to an SSD information is stored in microchips A typical SSD uses NAND-based flash memory SSDs are entirely different from hard disk drives(HDDs)

4 Read/write bandwidth of SSDs is higher than that of HDDs
SSDs have no seek time since they have no moving parts such as arms and spinning platters. Provide higher durability against shock, vibration and operating temperature SSDs consume less power than HDDs Faster start up Extremely low read latency The performance does not depends on the location of data

5 Real SSD hardware prototype

6 SSD LOGIC COMPONENTS

7 NAND FLASH MEMORY Non-volatile semi conductor device
organized into blocks where each block consists of a fixed number of pages. Page- unit of read and write operation Each page stores data and corresponding metadata and ECC(Error Correction Code) information. Latency of read and write operation is asymmetric. Does not allow in-place-update.

8

9 FLASH TRANSLATION LAYER
Main control software in SSD hides the complexity of flash Maps Logical Block Addresses(LBA) from the host to physical addresses in flash memory. Garbage collection-a process that erases dirty blocks and recycles these pages.

10 PERFOMANCE PARAMETERS IN SSDs
SSDs have different performance parameters compared with HDDs Eg: unit size of read/write operation in SSD is clustered page size and in HDD, it is the sector size. Actual value of parameter will depend on type of NAND flash memory and internal architecture of SSDs.

11 considered performance parameters
Clustered page Clustered block Size of read buffer Size of write buffer

12 Methodology to extract performance parameters

13 Measuring the clustered page size
the unit of read and write operations inside SSDs Adjusting the size of data transfer to the clustered page size, can enhance the I/O performance, since the FTL does not need to read or write more data than requested. Microbenchmark- exploits the difference in write latency depending on whether the write request is aligned to the clustered page boundary or not.

14

15

16

17 Measuring the clustered block size
Unit of erase operation if there are many random writes whose sizes are smaller than the clustered block size, the write bandwidth will suffer from the overheads of copying valid pages. Microbenchmark exploits the difference in write bandwidth between sequential and random writes. As the request size approaches to the clustered block size, the gap between the bandwidth of sequential writes and that of random writes will become smaller.

18

19

20 Measuring the read buffer capacity
To improve the read performance if the size of the read request is larger than the size of the read buffer, then the data has to be read directly from NAND flash memory Uses two benchmarks i) to measure the latency of read requests served from the read buffer ii) to measure the latency of read requests which are served from NAND flash memory directly

21

22

23

24 Measuring the write buffer capacity
to enhance the write performance by temporarily storing the updated data into the DRAM buffer. when the size of write requests exceeds the write buffer size, some of data should be flushed into NAND flash memory. Uses 2 microbenchmarks i) measures the time taken to write data into the write buffer ii) to measure the time to write the requested data to NAND flash memory

25

26

27

28 PARAMETER-AWARE I/O COMPONENT DESIGN
Using the extracted performance parameters from different SSDs, modifies the NOOPscheduler to a parameter-aware I/O scheduler for SSDs. 2 components i)generic block layer :merges block requests from the file system layer to optimize the request size. ii)I/O scheduler :schedules I/O requests to reduce the seek times of hard disks

29 Optimizing linux generic block layer
Merges consecutive requests from the file system increasing the request size hurts the response times for individual requests and consume more memory buffer cache resources propose two designs i) Parameter-aware splitting (PAS) ii) parameter-aware splitting and aligning (PASA)

30 Parameter-aware splitting(PAS) and aligning(PASA)
achieve short response time ,since entire request can be sent to the DRAM buffer in SSDs.

31 Linux I/O Scheduler Optimization
redesign the I/O scheduler to make requests aligned and well-split for SSDs Parameter-aware I/O scheduler (PAI): maintains two queues, i) normal queue :manages well-split requests ii)pending queue :manages the badly-split request PAI dispatches the requests in the normal queue before that in the pending queue since they are optimized.

32 b)Parameter-aware I/O scheduler(PAI)

33 PERFORMANCE EVALUATION
use the NoPAS-NOOP (NoPAS: No-Parameter-Aware- Splitting) as the baseline configuration compare NoPAS-PAI, PAS-PAI and PASA-PAI to the baseline. Uses NOOP scheduler as the baseline I/O scheduler Uses 2 benchmarks i)postmark ii)filebench

34

35 Composition of Requests Dispatched from PAI to the Block Device Driver (Postmark with SSD-A)

36 For postmark, NoPAS-PAI shows mixed results
the performance with NoPAS-PAI can either improve or drop, depending on the file size and the SSDs Combining PAS or PASA with PAI provides noticeable performance improvements over baselines for large file sizes. For the 8MB file configuration, the total numbers of requests submitted to an SSD with PAS and PASA increase compared to NoPAS The ratio of adjusted requests in PAS and PASA is higher than that in NoPAS The ratio of aligned requests in PASA is higher than that in PAS and NoPAS In 8 MB configuration with SSD-A, PASA outperforms PAS and NoPAS by five percent and 20 percent with PAI.

37 Filebench uses 3 profiles
i)websever : reads the fileset of random sizes and appends a log file using writes ii)filesever : creates, writes, appends and deletes the set of files randomly iii)OLTP(online transaction processing) : specifies datafiles, logfiles and database write threads.

38

39 conclusion proposed a new methodology that can extract several parameters SSDs and apply them to two components of a Linux operating system to improve the bandwidth of SSDs By optimizing the OS components with the extracted parameters, the write bandwidths for postmark and filebench improved by up to 24 percent and percent, respectively. understanding of the internal parameters of SSDs help to model SSD systems more accurately for system studies this study shows that even a limited information of SSD internals can improve file system performance significantly for certain cases.

40 reference [1] K. Yotov, K. Pingali, and P. Stodghill, “Automatic Measurement of Memory Hierarchy Parameters,” Proc. ACM SIGMETRICS Conf., pp , 2005. [2] J.-H. Kim, D. Jung, J.-S. Kim, and J. Huh, “A Methodology for Extracting Performance Parameters in Solid State Disks (ssds),” Proc. IEEE/ACM Int’l Symp. Modeling, Analysis, and Simulation of Computer and Telecomm. Systems (MASCOTS ’09), pp , 2009. [3] D.P. Bovet and M. Cesati, “Understanding the Linux Kernel,” O’Reilly Media Inc., 2005.

41

42


Download ppt "PARAMETER-AWARE I/O MANAGEMENT FOR SOLID STATE DISKS"

Similar presentations


Ads by Google