리눅스 환경에서Solid-State Disk 성능 최적화를 위한 디스크 입출력요구 변환 계층
Disk I/O Translation Layer for Solid-State Disk Performance Optimization in Linux
0
조회
0
다운로드
0
인용
0
참고문헌
키워드
초록
SSD(Solid-State Disk)는 여러 개의 낸드 플래시 메모리들로 구성된 저장 매체로서 뛰어난 읽기 성능을 보인다. SSD는 내장 낸드 플래시 메모리 관리 효율성을 위해 내부적으로 여러 개의 낸드 플래시 페이지들로 구성된 관리 블록을 정의하고 이 단위로 I/O 처리를 한다. 그러나 이러한 구조로 인해 작은 크기의 임의 쓰기는 연속 쓰기에 비해 크게 떨어지는 성능을 보인다. 본 논문에서는 SSD의 작은 크기의 임의 쓰기의 낮은 성능을 개선하기 위해 파일 시스템과 블록 장치 드라이버 사이에 디스크 입출력 요구를 변환시켜 주는 I/O 변환 계층을 추가하였다. 이 계층은 상위에서 내려오는 쓰기 요구를 순차 쓰기 형태가 되도록 변환하여 SSD에 보내준다. 이와 같은 기법을 통해 요구 명령의 크기가 128 KByte 이하인 임의 쓰기 성능이 5~31 배 향상되었다.
Abstract
An SSD (Solid-State Disk) is comprised of multiple NAND flash memories for high performance and capacity. SSD management block, which is composed of NAND flash memory pages, is defined as a basic I/O unit in an SSD to manage multiple NAND flash memories efficiently. However, processing in the SSD management block unit instead of small sized NAND flash page unit induces poor performance when dealing small sized write requests. In this paper we propose a method to enhance the poor performance of random small sized write requests in an SSD. The proposed method is implemented as a translation layer, which is between file system and block device driver. Write requests from the upper layer are translated into sequential write requests in the translation layer. As a result, the performance of random write requests smaller than 128 Kbyte is enhanced from 5 to 31 times.
참고문헌 (8)
- D. Woodhouse, "JFFS : The Journalling Flash File System", ~ (2001)
- "YAFFS: Yet Another Flash File System"[URL]
- N. Agrawal, "Design Tradeoffs for SSD Performance", In Proceedings of the USENIX Annual Technical Conference (USENIX '08), pp.57~70 (2008)
- H. Kim, "A Buffer Management Scheme for Improving Random Writes in Flash Storage", In Proceedings of the 6th USENIX Symposium on File and Storage Technologies (FAST'08), pp.239~252 (2008)
- Seon-Yeong Park, "CFLRU: a replacement algorithm for flash memory", In CASES '06: Proceedings of the 2006 International Conference on Compilers, Architecture and Synthesis for Embedded Systems, pp.234~241 (2006), ACM
- L.P. Chang, "An adaptive striping architecture for flash memory storage systems of embedded systems", in:Proceedings of the Eighth IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'02), pp.187~196 (2002)
- J. U. Kang, "A Multi-Channel Architecture for High-Performance NAND flash-based Storage System", Journal of System Architecture, 52(9) (2007)
- "Intel. Iometer, performance analysis tool"[URL]
