An performance analysis on SSD caching mechanism in Linux

리눅스 SSD caching mechanism 의 성능 비교 및 분석

  • 허상복 (전북대학교 전자정보공학부) ;
  • 박진희 (전북대학교 전자정보공학부) ;
  • 조희승 (전남대학교 IT정보공학과)
  • Received : 2015.05.20
  • Accepted : 2015.06.29
  • Published : 2015.06.30

Abstract

During several decades, hard disk drive(HDD) has been used in most computer systems as secondary storage and, however, the performance enhancement of HDD is limited by its mechanical properties. On the other hand, although the flash memory based solid state drive (SSD) has more advantages over HDD such as high performance and low noise, SSD is still too expensive for common usage and expected to take several years to replace HDD completely. Therefore, SSD caching mechanism using the SSD as a cache of high capacity HDD has been highlighted lately. The representatives of SSD caching mechanisms are typically bcache, dm-cache, Flashcache, and EnhanceIO. Each of them has its own internal mechanism and implementation, and this makes them to show their own pros. and cons. In this paper, we analyze the characteristics of each SSD caching mechanisms and compare the performance of them under various workloads. We expect that our contribution will be useful to enhance the performance of SSD caching mechanisms.

Hard disk drive(HDD)는 보조 저장장치로서 대부분의 컴퓨터 시스템에서 사용되고 있으나 기계적 특성으로 인하여 성능의 향상 측면에서는 한계점에 도달해 있는 상황이다. 반면, 플래시 메모리 기반인 solid state drive(SSD)는 고성능 저소음이라는 장점이 있지만, HDD에 비해 높은 가격으로 인해 아직 HDD를 완전 대체하기에는 부담이 크다. 따라서 SSD를 대용량인 HDD의 cache로 사용하는 SSD caching mechanism이 최근 주목을 받고 있다. SSD caching mechanism은 대표적으로 bcache, dm-cache, Flashcache, EnhanceIO 등이 있으며, 각 mechanism들은 구현상의 장단점과 차별성이 존재한다. 본 논문에서는 각 SSD caching mechanism들의 특정을 파악하고, 벤치마크를 통하여 성능을 비교 분석하였다. 이러한 연구를 기반으로 향후 더 성능이 좋은 SSD caching mechanism을 개발하는데 기여할 수 있을 것으로 예상된다.

Keywords

Acknowledgement

Supported by : 정보통신기술진흥센터

References

  1. http://en.wikipedia.org/wiki/Solid-state_drive
  2. Linux, Kernel Documentation, https://www.kernel.org/doc/Documentation/bcche.txt
  3. Linux Kernel Documentation, https://www.kern-el.org/doc/Documentation/devicemapper/cache.txt
  4. Flashcache, http://en.wikipedia.org/wiki/Flashcache
  5. EnhanceIO, https://wiki.archlinux.org/index.php/EnhanceIO
  6. 송현섭, Dm-cache를 이용한 SSD 캐시의 실험적 평가, 한국정보과학회, 1284-1286, 2013
  7. Christopher, H. et al., The Effect of Flashcache and Bcache on I/O Performance, International Conference on Computing in High Energy and Nuclear Physics, 2013.
  8. Device mapper, http://en.wikipedia.org/wiki/Device_mapper
  9. LVM, http://en.wikipedia.org/wiki/Logical_Volume_Manager_(Linux)