DOI QR코드

DOI QR Code

File-System-Level SSD Caching for Improving Application Launch Time

응용프로그램의 기동시간 단축을 위한 파일 시스템 수준의 SSD 캐싱 기법

  • 한창희 (LG전자 SW플랫폼연구소) ;
  • 유준희 (삼성전자 네트워크사업부) ;
  • 이동은 (울산과학기술대학교 전기컴퓨터공학부) ;
  • 강경태 (한양대학교 컴퓨터공학과) ;
  • 신현식 (서울대학교 컴퓨터공학부)
  • Received : 2014.12.06
  • Accepted : 2015.03.04
  • Published : 2015.06.15

Abstract

Application launch time is an important performance metric to user experience in desktop and laptop environment, which mostly depends on the performance of secondary storage. Application launch times can be reduced by utilizing solid-state drive (SSD) instead of hard disk drive (HDD). However, considering a cost-performance trade-off, utilizing SSDs as caches for slow HDDs is a practicable alternative in reducing the application launch times. We propose a new SSD caching scheme which migrates data blocks from HDDs to SSDs. Our scheme operates entirely in the file system level and does not require an extra layer for mapping SSD-cached data that is essential in most other schemes. In particular, our scheme does not incur mapping overheads that cause significant burdens on the main memory, CPU, and SSD space for mapping table. Experimental results conducted with 8 popular applications demonstrate our scheme yields 56% of performance gain in application launch, when data blocks along with metadata are migrated.

응용프로그램의 기동 시간은 기기에 대한 사용자 체험에 영향을 주는 중요한 지표로 보조 기억 장치의 성능에 의해 큰 영향을 받는다. 하드디스크 대신 SSD를 사용하게 되면 기동 시간을 크게 낮출 수 있지만 비용 대비 성능을 고려하면 작은 용량의 SSD를 하드디스크의 캐시로 쓰는 것이 현실적인 대안이 될 수 있다. 본 논문에서는 파일시스템 수준에서 하드디스크 상의 블록을 SSD로 이주시키는 기법을 제안한다. 제안한 기법은 기존의 SSD 캐싱 기법들에서 요구되던 캐시 데이터의 사상에 필요한 주 메모리, CPU, 그리고 사상 정보의 유지를 위한 SSD 공간 사용의 부가적인 오버헤드가 없다. 8개의 응용프로그램을 이용한 실험에서 메타데이터와 데이터 블록을 모두 SSD에 캐싱한 경우에 기동시간이 평균 56% 단축됨을 확인하였다.

Keywords

Acknowledgement

Grant : Resilient Cyber-Physical Systems Research

Supported by : 정보통신기술진흥센터, 한국연구재단

References

  1. Y. Joo, J. Ryu, S. Park, and K. G. Shin, "FAST: Quick Application Launch on Solid-State Drives," Proc. of the 9th Conference on File and Storage Technologies, pp. 259-272, Feb. 2011.
  2. J. Ryu, Y. Joo, S. Park, H. Shin, and K. G. Shin, "Exploiting SSD parallelism to accelerate application launch on SSDs," IET Electronics Letters, Vol. 47, No. 5, pp. 313-315, 2011. https://doi.org/10.1049/el.2011.0042
  3. Y. Deng, "What is the future of disk drives, death or rebirth?," ACM Computing Surveys, Vol. 43, No. 3, 2011.
  4. Y. Joo, J. Ryu, S. Park, H. Shin, and K. G. Shin, "Rapid Prototyping and Evaluation of Intelligence Functions of Active Storage Devices," IEEE Trans. Computers, Vol. 63, No. 9, pp. 2356-2368, Sept. 2014. https://doi.org/10.1109/TC.2013.101
  5. J. Matthews, S. Trika, D. Hensgen, R. Coulson, and K. Grimsrud, "Intel$^{(R)}$ Turbo Memory: Nonvolatile disk caches in the storage hierarchy of mainstream computer systems," ACM Trans. Storage, Vol. 4, No. 2, pp. 1-24, May 2008.
  6. D. Arteaga, D. Otstott, and M. Zhao, "Dynamic Block-level Cache Management for Cloud Computing Systems," Proc. of the 10th Conference on File and Storage Technologies (Poster Session), Feb., 2012.
  7. M. Srinivasan, Flashcache, available from https://github.com/facebook/flashcache
  8. K. Overstreet, Bcache, available from http://bcache.evilpiepirate.org
  9. S. Tweedie, "Ext3, journaling filesystem," Ottawa Linux Symposium, pp. 24-29, Feb. 2000.
  10. M. Mauerer, Professional Linux Kernel Architecture, Wiley publishing, Inc, 2008.
  11. D. P. Bovet, and M. Cesati, Understanding the Linux Kernel, 3rd edition, O'Reilly media, Inc, 2006.