본문 바로가기
KERD
논문KCI 등재

개인용 SSD를 위한 선반입 및 메모리 관리 정책

A Prefetching and Memory Management Policy for Personal Solid State Drives

0

조회

0

다운로드

0

인용

0

참고문헌

키워드

주제분류컴퓨터학

초록

기존의 운영체제에서 하드디스크의 성능을 향상시키기 위해서 사용해왔던 기술들이 SSD(Solid State Drive)에는 부정적 효과를 나타내는 경우가 많다. HDD의 기계적인 요소 때문에 접근 시간과 블록 주소의 순서가 성능에 매우 중요한 요인으로 작용하였지만, SSD는 불록 주소의 순서에 영향을 받지 않는 우수한 랜덤 읽기 성능을 제공한다. 실제 개인용 PC에서 SSD를 사용할 때에 선반입을 끄도록 권고되고 있다. 하지만이 논문은 SSD의 내부 구조와 낸드 플래시 메모리의 특징을 고려한 선반입 및 메모리관리 정책를 결합한 방법을 제시한다. SSD에는 다수개의낸드 플래시 메모리로 구성되어 있어 칩을 동시에 구동시키는 것이 중요하며, 낸드 플래시 메모리의 기본 입출력 단위가 계속 증가하는 방향으로 발전하고 있어서 SSD 내부의 동작 단위가 운영체제의 블록 크기보다 훨씬 커지게 되었다. 이 논문은 이러한 SSD의 특징과 경향을 수용하여, 제안하는 선반입 기법은 SSD의 동작 단위로 수행되며, 제안하는 메모리 관리 기법은 그 선반입 기법의 단점을 보완하여, 캐시 히트율과 선반입 히트율의 합이 최대가 되도록, 선반입되었지만 사용되지 않는 데이터를 적응적으로 퇴출한다. 본 기술은 리눅스 커널 모듈로 개발하였으며 실제 SSD를 사용하여 성능 평가를 실시하였다. 주어진 실험에서 제안하는 선반입 기법이 약 26%까지 성능을 향상시켰다.

Abstract

Traditional technologies that are used to improve the performance of hard disk drives show many negative cases if they are applied to solid state drives (SSD). Access time and block sequence in hard disk drives that consist of mechanical components are very important performance factors. Meanwhile, SSD provides superior random read performance that is not affected by block address sequence due to the characteristics of flash memory. Practically, it is recommended to disable prefetching if a SSD is installed in a personal computer. However, this paper presents a combinational method of a prefetching scheme and a memory management that consider the internal structure of SSD and the characteristics of NAND flash memory. It is important that SSD must concurrently operate multiple flash memory chips. The I/O unit size of NAND flash memory tends to increase and it exceeded the block size of operating systems. Hence,the proposed prefetching scheme performs in an operating unit of SSD. To complement a weak point of the prefetching scheme, the proposed memory management scheme adaptively evicts uselessly prefetched data to maximize the sum of cache hit rate and prefetch hit rate. We implemented the proposed schemes as a Linux kernel module and evaluated them using a commercial SSD. The schemes improved the I/O performance up to 26% in a given experiment.

참고문헌 (27)

  1. J. He, "DASH-IO: an empirical study of flash-based- IO for HPC", the 2010 TeraGrid Conference (2010)
  2. K. Eshghi, "Enterprise SSDs with Unrivaled Perforrmance A Case for PCIe SSDs", Flash Memory Summit 2010 (2010)
  3. A. Vasudeva, "Flash in Enterprise Storage Systems", Flash Memory Summit 2010 (2010)
  4. Y. Wang, "Early Experience and Evaluation of Fiel Systems on SSD with Database Applications", 5th IEEE Int'l Conf. on Networking Architecture and Storage, pp.476~476 (2010)
  5. A New I, "O Scheduler for Solid State Drives", M. Dunn, 2009, Tech. Rep. TAMU-ECE-2009-02
  6. 김정기, "임베디드 플래시 파일 시스템을 위한 순위별 지움 정책", 정보처리학회논문지, 9-A(4) (2002)
  7. H. Kim, "BPLRU: a buffer management scheme for improving random writes in flash storage", the 6th USENIX Conf. on File And Storage Technologies, pp.1~14 (2008)
  8. B. Debnath, "Large Block CLOCK (LB-CLOCK): a write caching algorithm for solid state disks", IEEE Int'l Symp. on Modeling Analysis & Simulation of Computer and Telecommunication Systems, pp.1~9 (2009)
  9. S. Iyer, "Anticipatory Scheduling: A Disk Scheduling Framework to Overcome Deceptive Idleness in Synchronous I", O, 2001, 117~130
  10. J, Kim, "Disk schedulers for solid state drivers", EMSOFT, pp.295~304 (2009)
  11. F. Chang, "Automatic I", O hint generation through speculative execution, 1999, 1~14
  12. S. Bhattacharya, "Linux AIO performance and robustness for enterprise workloads", Linux Symposium, pp.63~78 (2004)
  13. J. Griffioen, "Reducing file system latency using a predictive approach", USENIX Summer Technical Conference, pp.197~208 (1994)
  14. D. Joseph, "Prefetching using markov predictors", IEEE Trans. on Computers, 48(2), pp.121~133 (1999)
  15. "Windows PC Accele"[URL]
  16. Y. Joo, "FAST: Quick Application Launch on Solid-State Drives", USENIX Conf. on File and Storage Technologies (2011)
  17. GILL, B. S., "SARC: Sequential prefetching in adaptive replacement cache", In Proc. USENIX 2005, pp.293~308 (2005)
  18. Hang-Ting Lue, "Study of Incremental Step Pulse Programming and STI edge effect of BE-SONOS NAND flash", Reliability Physic Symposium, pp.693~694 (2008)
  19. Michael Abraham, "NAND Flash Trends for SSD", Enterprise, 2010, ~
  20. Samsung Electronics, "Flash Memory K9XXG08UXM datasheet", ~ (2011)
  21. "NAND Interface: SmartNAND"[URL]
  22. Wikipedia, "Disk sector", ~ (2011)
  23. F. Chen, "CAFTL: a context-aware flash translation layer enhancing the lifespan of flash memory based solid state drives", 9th USENIS Conf. on File and Storage Technologies (2011)
  24. T. Makatos, "Using transparent compression to improve SSD-based I", O caches, 2010, ~
  25. "SSD optimization guide"[URL]
  26. 정보성, "내장형 시스템을 위한 선택적 뱅크 알고리즘을 이용한 데이터 캐쉬 시스템", 정보처리학회논문지. 컴퓨터 및 통신시스템, 16(2), pp.69~78 (2009), 한국정보처리학회
  27. 백승훈, "Matrix-stripe-cache-based contiguity transform for fragmented writes in RAID-5", IEEE TRANSACTIONS ON COMPUTERS, 56(0), pp.1040~1054 (2007), IEEE COMPUTER SOC

관련 논문AI추천

이 간행물의 다른 논문 (8건)