View
5
Download
0
Category
Preview:
Citation preview
Block Management in Solid-State DevicesAbhishek Rajimwal, Vijayan Prabhakaran, John D. Davisj , j y ,
University of Wisconsin, MadisonMicrosoft Research, Silicon Valley
Proceedings of the USENIX 2009
2010. 7. 26.
Sanghoon, Jeon
- 1/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Contents
• Abstraction
• BackgroundBackground
• Motivation & Problem
• Valid or not of six assumptions in SSD
• Proposal Solution
• Limitation
• Improvements• Improvements
- 2/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Abstraction
Solid-State Devices는 6가지 측면(system-level consumption)에서
유효하지 않음을 증명하였으며 이러한 문제점을 해결하기 위해유효하지 않음을 증명하였으며, 이러한 문제점을 해결하기 위해
Object-based Storage Device interface 사용을 제안함.
- 3/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Background (1/3)
• Block based Interface◦ SATA : desktop용 host interface (Serial ATA)◦ SAS : server용 host interface (Serial Attached SCSI)◦ SAS : server용 host interface (Serial Attached SCSI)◦ Fibre channel, PCIe : 고속의 another host interface◦ NVMHCI : Flash Memory용 host interface
• SSD HW & FW Architecture
SSD F/W
HIL
CALCAL
FTL
- 4/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Background (2/3)
• HDD와 다른 SSD의 3가지 특징◦ No Header
Electronic Signal을 이용 Electronic Signal을 이용
◦ No Overwrite Mapping Table 관리, Wear leveling, Garbage collection 등 필요
A il bl P ll li◦ Available Parallelism Multi channel, Multi way, Multi plane
• NAND Device◦ SLC (single level cell) vs. MLC (multi level cell)
P/E cycle, tPROG, tBERS, tR 등 차이P/E cycle, tPROG, tBERS, tR 등 차이
- 5/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Background (3/3)
• Object-based Storage Device◦ Object
File System과 유사한 Interface를 가지는 Storage Container를 의미함 File System과 유사한 Interface를 가지는 Storage Container를 의미함. data, user accessible attribute, device-managed metadata 등으로 구성
◦ CharacteristicsSt A hit t 의 일종으로 높은 성능과 보안성을 유지하면서 이 기종 플랫 Storage Architecture의 일종으로 높은 성능과 보안성을 유지하면서 이 기종 플랫폼간 데이터 공유와 확장성의 이점을 가짐.
– 이상적인 Storage Architecture» high performance, strong security, data sharing across platforms, scalabilityhigh performance, strong security, data sharing across platforms, scalability
- 6/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Motivation & Problem
Unwritten Contract
- 기존의 OS와 File System은 HDD 기반의 물리적인 특성을 고려하여 설계/구현 되어 있음.
- 따라서 기존 System은 HDD 기반의 Assumption 을 가지고 있음.
HDD 이외에 SSD 등의 저장매체를 사용할 경우, Storage 정보의 Abstraction으로 인한 비효
율성이 존재함. (Poor Performance, Life time)
Incorrect division
- Block Management를 Host의 File System에서 담당하고 있음.
Host에 저장 매체에 대한 특성이 제대로 전달되지 않아, Storage specific한 정보를 활용하는
효율적 관리가 어려움효율적 관리가 어려움.
- 7/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Valid or not of six consumptions in SSD (1/6)
• Sequential vs. Random◦ Definition
Sequential access are much better than random access Sequential access are much better than random access.
◦ Result HDD is true. But SSD is false.
R◦ Reason SSD F/W use the log-structured FTL. There is no time for moving header.
◦ Suggestion File system must focus on higher-level operation instead of complex policies to
achieve block level sequentially.
SLC와 MLC 와의 비교는
큰 의미 없고, Mapping 방
식의 차이에 따른 비교가
더욱 정확함.
- 8/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Valid or not of six consumptions in SSD (2/6)
• Logical to physical mapping◦ Definition
Distant LBNs lead to longer seek times Distant LBNs lead to longer seek times.
◦ Result HDD is true. But SSD is false.
R◦ Reason SSD F/W have to do cleaning, wear-leveling. The physical location is irrelevant.
◦ Suggestion This further motivates the conclusion that we use OSD interface in SSD. We have to find the SSD specific I/O scheduling algorithm such as shortest
wait time first (SWTF).
- Mapping 방식에 따라 Read/Write 속도 달라질 수 있음.
- 기존 SSD F/W에도 Native Command Queuing (NCQ)를 이용해
I/O Scheduling algorithm을 수행하고 있음.
- 9/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Valid or not of six consumptions in SSD (3/6)
• Interchangeable address space◦ Definition
The logical address space is uniformly spread over the device The logical address space is uniformly spread over the device.
◦ Result HDD is false. SSD is also false.
R◦ Reason SSD might be constructed with multiple types of SLC and MLC. Flex-OneNAND MLC SSD type can use LSB only or all of the page such as LSB, MSB.
◦ Suggestion Hot/Cold management using by OSD interface
- SLC Only로 사용하는 SSD의 경우 위의 Assumption은 Valid함.
- 10/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Valid or not of six consumptions in SSD (4/6)
• Write Amplification◦ Definition
Data written is equal to data issued Data written is equal to data issued.
◦ Result HDD is true. But SSD is false.
R◦ Reason The logical page is larger than the physical page size. A write is issued in-place using a read-modify-erase-write cycle. SSD F/W have to rewrite it when run time bad block is happened.
◦ Suggestion Write amplification can be reduced by merging writes and aligning them.
- 11/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Valid or not of six consumptions in SSD (5/6)
• Block Wear◦ Definition
Media does not wear down Media does not wear down.
◦ Result HDD is true. But SSD is false.
R◦ Reason Flash memory blocks have limited erase cycles before wearing out. SSD implement cleaning and wear-leveling to uniformly spread the wear-down
f bl kof blocks.
◦ Suggestion SSD F/W use the free page information during the cleaning. Data Compression
- 12/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Valid or not of six consumptions in SSD (6/6)
• Background Activity◦ Definition
Storage devices are passive with little background activity Storage devices are passive with little background activity.
◦ Result HDD is true. But SSD is false.
R◦ Reason SSD F/W have to do cleaning, wear-leveling.
◦ Suggestion Priority-aware background operation.
Background Operation을 하면
오히려 Average Performance는
낮아질 수있음.
- 13/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Proposal Solution
• Object Storage Device Interface◦ File system 은 Object 관 리 만 하 고 , SSD F/W 가 Block management
operation을 전담할 수 있다operation을 전담할 수 있다. SSD specific한 block management를 할 수 있음.
SSD F/W는 OSD interface를 통해 free page 정보를 확인 할 수 있다◦ SSD F/W는 OSD interface를 통해 free page 정보를 확인 할 수 있다. Cleaning의 효율성을 증가 시킬 수 있음.
OSD의 d 속성( d l )을 이용하여 W l li 시에 C ld d◦ OSD의 data 속성(e.g. read only)을 이용하여 Wear-leveling시에 Cold dataplacement를 할 수 있다. Read only 데이터는 erase count가 높은 block에 할당하여 wear out을 방지할 수
있음있음.
◦ I/O Scheduling 시 에 OSD interface 를 이 용 하 여 priority-aware 한b k d i i 를 할 수 있다background activity를 할 수 있다. Foreground activity의 response time을 개선할 수 있음.
- 14/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Limitation
• 기존 System을 변경하기 쉽지 않음.◦ 기존 System과의 Compatibility 감소
• Object Mapping 정보 유지에 따른 F/W Overhead 증가◦ Mapping Data 증가에 따른 SRAM Size 증가 가격 증가
• Assumption에 Power-off Recovery (POR) 이슈 없음.HDD의 경우 POR 이슈가 없으나 SSD의 경우 h b ff 사용 및◦ HDD의 경우 POR 이슈가 없으나, SSD의 경우 cache, buffer 사용 및background operation으로 인해 POR 이슈 발생.
- 15/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Improvements
• Performance◦ Parallelism 극대화 기술 연구
Multi channel 및 multi way의 이용을 극대화 할 수 있는 algorithm 개발 Multi channel 및 multi way의 이용을 극대화 할 수 있는 algorithm 개발. Full page mapping, Stripe I/O
li bili• Reliability◦ RAID 기술 적용 Dynamic 하게 적용할 수 있도록
SSD의 경우 여러 개의 Flash Package로 구성되어 있으므로, SSD F/W만으로 기능의 우 여러 개의 g 구 되어 기구현을 할 수 있음.
◦ Power-off Recovery 기술 연구 Super-cap을 이용하여 Sudden power-off 시 data를 저장할 수 있도록 함.p p을 이용하여 p 시 를 저장할 수 있 록 함
• Availability◦ Data Compression 기술 적용◦ Data Compression 기술 적용
User Data에 대한 data 압축을 통해 Flash Memory의 life time 증가 write 횟수가 감소하므로…
- 16/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
- 17/17 -
Presentation in Operating System DesignPresentation in Operating System Design
Digital Media & Communication, Sanghoon, Jeon
Recommended