1 / 9

서울대학교 학부과정 프로젝트 소개

서울대학교 학부과정 프로젝트 소개. 김경호 책임 , 박현철 사원 2011.09.09. S/W 개발 -P/J 플래시 개발실 SAMSUNG MEMORY DIVISION . 프로젝트 1. Disksim with SSD Extension 에 PRAM 모델 추가 PRAM 기반 Storage 연구 인프라 확충 차세대 비휘발성 메모리인 PRAM 의 가능성을 가늠한다 . 개발 기간 : 6 개월 개발 인원 : 4 인. PRAM –based SSD Extension for Disksim.

reegan
Download Presentation

서울대학교 학부과정 프로젝트 소개

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. 서울대학교 학부과정 프로젝트 소개 김경호 책임, 박현철 사원 2011.09.09 S/W개발-P/J 플래시 개발실 SAMSUNG MEMORY DIVISION

  2. 프로젝트 1 • Disksim with SSD Extension에 PRAM 모델 추가 • PRAM 기반 Storage 연구 인프라 확충 • 차세대 비휘발성 메모리인 PRAM의 가능성을 가늠한다. • 개발 기간 : 6개월 • 개발 인원 : 4인

  3. PRAM –based SSD Extension for Disksim • NAND와 PRAM • NAND는 빠른 처리 속도와 집적도를 기반으로 대용량 저장장치로 사용되고 있다. • 그러나 제한된 수명과 Byte 단위 접근 불가는 NAND의 활용을 어렵게 한다. • PRAM은 NAND의 단점들을 보완할 수 있는 비휘발성 메모리로 향후 가능성이 기대된다. [1] 황주영, 노양우, 김민찬, “고속 페이징 장치로서의 스토리지 클래스 메모리”, NVRAMOS 2011

  4. PRAM –based SSD Extension for Disksim • DiskSim[2]이란? • 확장성이 뛰어난 저장장치 시뮬레이터 • Microsoft사에서 SSD Extension 개발 및 배포[3],[4]. • Disksim with SSD extension 구조 Event Processing Flow Request path Request Event Queue Event Dispatcher IO driver IO Driver Queue Disk Controller Bus NAND를 위한 관리 정책 및 명령들을 PRAM에 맞게 변경 SSD Request Queue SSD F/W NAND Spec을 PRAM Spec으로 변경 … Chip 0 Chip 1 Chip 2 Chip n SSD

  5. 프로젝트 2 • I/O trace를 분석하여 NAND array 상에서 oracle mapping을 simulation하는 기법 구현 • 최근 SSD들은 최대의 성능을 보장하기 위하여 page mapping을 사용하지만, SSD가 앞으로 어떤 I/O 요청이 들어올 지 100% 확신할 수 없으므로, 데이터를 NAND array 상에서 사전에 정해진 순서대로 striping함.[4],[5] • Offline으로 I/O 요청간의 LBA, issue time등을 분석하여 가장 이상적으로 데이터가 매핑(oracle mapping)된 경우를 simulation해주는 툴을 개발. • Orcale mapping의 목표 : 성능, 최소 WAF (Write Amplification Factor) • 이 툴을 통해 SSD 성능 개선의 지표로 활용할 수 있는 실험 결과를 얻음. • 개발 기간 : 6개월 • 개발 인원 : 4인

  6. Oracle mapping의 simulator 구현 • Mapping • NAND는 overwrite가 불가능하기 때문에 I/O 요청의 LBA와 실제 주소간의 mapping이 필요하다. • SSD의 Parallelism[4] • NAND의 데이터 처리속도는 충분히 빠르지 못하므로 여러 개의 NAND 칩을 병렬로 구성하여 병렬 처리를 지원하고, 데이터를 NAND Chip들에 striping한다. SSD Page 0 NAND Chip NAND Chip NAND Chip NAND Chip Page 6,7 Page 0, 1, 2, 3 Page 1 NAND Chip NAND Chip NAND Chip NAND Chip SSD Controller Host Interface Page 6 Page 2 NAND Chip NAND Chip NAND Chip NAND Chip Page 7 Page 3 NAND Chip NAND Chip NAND Chip NAND Chip

  7. Oracle mapping의 simulator 구현 • Oracle mapping • 다음에 어떤 I/O가 올지 안다면 가장 효율적으로 데이터를 매핑할 수 있을 것이다. • Offline으로 I/O를 분석하여 매핑의 best-case를 구한다. • Oracle mapping을 통해 SSD 성능 개선의 지표를 얻을 수 있다. Read 1,2,6,7 Read 1,2,6,7 Host Interface Host Interface SSD SSD SSD Controller SSD Controller Oracle mapping Page 1 Page 2 Page 1 Page 2 Page 6 Page 7 Page 6 Page 7 Flash Chips 0 Flash Chips 1 Flash Chips 2 Flash Chips 3 Flash Chips 0 Flash Chips 1 Flash Chips 2 Flash Chips 3 Page 0 Page 1 Page 2 Page 3 Page 1 Page 2 Page 3 Page 0 Page 6 Page 7 Page 6 Page 7

  8. References [1] 조상연, “PCM의 컴퓨터시스템 적용에 대한 고찰”, NVRAMOS, April, 2011 [2] “The DiskSim Simulation Environment (v4.0)”, http://www.pdl.cmu.edu/DiskSim/ [3] “SSD Extension for DiskSim Simulation Environment”, http://research.microsoft.com/en-us/downloads/b41019e2-1d2b-44d8-b512-ba35ab814cd4/default.aspx [4] Nitin Agrawal, Vijauan Prabhakaran, Ted Wobber, John D. Davis, Mark Manasse, Rina Panigrahy, “Design Tradeoffs for SSD Performance”, USENIX 2008 ATC, p.57-70, June, 2008. [5] Aayush Gupta, Youngjae Kim, Bhuvan Urgaonkar, “DFTL: a Flash Translation Layer Employing Demand-based Selective Caching of Page-level Address Mappings”, Proceedings of the 14th international conference on Architectural support for programming languages and operating systems, March, 2009.

  9. from

More Related