커널의 미리읽기를 고려한 압축파일시스템의 읽기성능향상

Improving the Read Performance of Compressed File Systems Considering Kernel Read-ahead Mechanism

  • 안성용 (서울대학교 컴퓨터공학부) ;
  • 현승환 (서울대학교 컴퓨터공학부) ;
  • 고건 (서울대학교 컴퓨터공학부)
  • 투고 : 2009.12.24
  • 심사 : 2010.03.28
  • 발행 : 2010.06.15

초록

압축파일시스템은 비용효율성을 높이기 위해 모바일 장치 개발에 자주 사용된다. 그러나 압축파일시스템은 비압축파일시스템에 비해 읽기 성능이 떨어진다는 단점이 있다. 압축파일시스템의 읽기성능저하의 원인 중 하나는 커널 의 미리읽기 기법이다. 주된 이유는 압축파일시스템의 압축해제 오버헤드로 인해 미리읽기 미스패널티가 너무 크기 때문이다. 이 문제를 해결하기 위해 본 논문에서는 커널의 미리읽기 기법을 고려한 압축파일시스템의 읽기기법을 제안한다. 제안된 기법은 bulk read를 통해 저장장치의 성능을 향상시키는 동시에 선택적 압축해제를 통해 압축파일 시스템의 압축해제 오버헤드를 줄인다. 우리는 리눅스 기반 시스템에서 널리 사용되는 압축파일시스템인 CramFS를 수정하여 제안된 기법을 구현하였으며 성능측정 실험을 통해 제안된 기법이 압축파일시스템의 메이저 페이지 폴트 처리 시간을 약 28%까지 단축시킬 수 있음을 보였다.

Compressed filesystem is frequently used in the embedded system to increase cost efficiency. One of the drawbacks of compressed filesystem is low read performance. Moreover, read-ahead mechanism that improves the read throughput of storage device has negative effect on the read performance of compressed filesystem, increasing read latency. Main reason is that compressed filesystem has too big read-ahead miss penalty due to decompression overhead. To solve this problem, this paper proposes new read technique considering kernel read-ahead mechanism for compressed filesystem. Proposed technique improves read throughput of device by bulk read from device and reduces decompression overhead of compressed filesystem by selective decompression. We implement proposed technique by modifying CramFS and evaluate our implementation in the Linux kernel 2.6.21. Performance evaluation results show that proposed technique reduces the average major page fault handling latency by 28%.

키워드

참고문헌

  1. W. T. Huang, C. T. Chen, Y. S. Chen, and C. H. Chen, "A compression layer for NAND type flash memory systems," Proc. of the IEEE ICITA 2005, vol.02, pp.599-604, 2005. (in Australia)
  2. CramFS document, http://lxr.linux.no/source/fs/cramfs/README
  3. CramFS tools, http://sourceforge.net/projects/cramfs/
  4. S. Tweedie, "EXT3, Journaling Filesystem," Proc. of the 2000 Ottawa Linux Symposium, 2000. (in Canada)
  5. Qtopia Platform, http://doc.trolltech.com/qtopia2.2/html/overview.html
  6. M. Opdenacker, "Readahead: time-travel techniques for desktop and embedded systems," Proc. of the 2007 Ottawa Linux Symposium, vol.02, pp.97-106, 2007. (in Canada)
  7. TI OMAP 2420 Platform, http://focus.ti.com/general/docs/wtbu/wtbuproductcontent.tsp?templateId=6123&navigationId=11990&contentId=4671
  8. Samsung OneNANDTM KFXG16Q2M-DEB6 datasheets, http://www.samsung.com/global/business/semiconductor/productInfo.do?fmly_id=160&partnum=KFG1G16Q2M#component03