DOI QR코드

DOI QR Code

A Cache buffer and Read Request-aware Request Scheduling Method for NAND flash-based Solid-state Disks

캐시 버퍼와 읽기 요청을 고려한 낸드 플래시 기반 솔리드 스테이트 디스크의 요청 스케줄링 기법

  • Bang, Kwanhu (Department of Electrical and Electronic Engineering, Yonsei University) ;
  • Park, Sang-Hoon (Department of Electrical and Electronic Engineering, Yonsei University) ;
  • Lee, Hyuk-Jun (Department of Computer Science and Engineering, Sogang University) ;
  • Chung, Eui-Young (Department of Electrical and Electronic Engineering, Yonsei University)
  • Received : 2013.04.01
  • Published : 2013.08.15

Abstract

Solid-state disks (SSDs) have been widely used by high-performance personal computers or servers due to its good characteristics and performance. The NAND flash-based SSDs, which take large portion of the whole NAND flash market, are the major type of SSDs. They usually integrate a cache buffer which is built from DRAM and uses the write-back policy for better performance. Unfortunately, the policy makes existing scheduling methods less effective at the I/F level of SSDs Therefore, in this paper, we propose a scheduling method for the I/F with consideration of the cache buffer. The proposed method considers the hit/miss status of cache buffer and gives higher priority to the read requests. As a result, the requests whose data is hit on the cache buffer can be handled in advance and the read requests which have larger effects on the whole system performance than write requests experience shorter latency. The experimental results show that the proposed scheduling method improves read latency by 26%.

솔리드 스테이트 디스크 (SSD)는 고성능 개인용 컴퓨터나 서버 분야에서 뛰어난 특성과 성능을 바탕으로 입지를 넓혀 나가고 있다. 특히 낸드 플래시 메모리에 기반한 SSD가 주류를 이루며 이미 거대한 시장을 확보하고 있는 낸드 플래시 메모리 시장의 큰 부분을 차지하고 있다. 이러한 낸드 플래시 메모리 기반 SSD에는 보통 낸드 플래시 메모리의 특성을 숨기기 위하여 DRAM으로 제작되는 캐시 버퍼가 장착되는데 이 캐시 버퍼는 보다 높은 성능을 달성하기 위해 나중 쓰기 방식을 활용하고 이는 기존의 낸드 플래시 메모리 만을 고려한 스케줄링 기법들을 I/F에서 효과적으로 활용할 수 없게 한다. 따라서 본 논문에서는 I/F에서 사용할 수 있는 캐시 버퍼를 고려한 스케줄링 기법을 제안하고자 한다. 스케줄링 기법은 크게 두 가지 기준을 가지고 스케줄링을 진행하는데 캐시 버퍼의 적중 여부와 읽기 요청에 대한 우선순위이다. 이는 캐시 버퍼에 적중한 요청들을 먼저 처리하여 처리속도를 증가시키고 시스템 성능에 보다 큰 영향을 끼치는 읽기 요청의 지연시간을 줄이기 위함이다. 실험 결과에 따르면 제안하는 스케줄링 기법을 사용했을 때 약 26% 향상된 읽기 성능을 보여주었다.

Keywords

References

  1. 박현철, 신동군, "Solid State Disk를 위한 주소 매핑 기법," 전자공학회지, 제27권, 3호, 271-289쪽, 2010년 3월
  2. J. U. Kang, J.-S. Kim, C. Park, H. Park, J. Lee, "A multi-channel architecture for high-performance NAND flash-based storage system," Journal of Systems Architecture, vol. 53, no. 9, pp. 644-658, Sep. 2007. https://doi.org/10.1016/j.sysarc.2007.01.010
  3. Y.-B. Chang, L. P. Chang. "A self-balancing striping scheme for NAND-flash storage systems," In Proceedings of the 2008 ACM symposium on Applied computing (SAC '08) , 2008.
  4. Y. Liu, L. Cheng, X. Wang, "Commands scheduling optimized flash controller for high bandwidth SSD application," IEEE 11th International Conference on Solid-State and Integrated Circuit Technology (ICSICT) , 2012.
  5. C. Park, E. Seo, J.-Y. Shin, S. Maeng, J. Lee, "Exploiting Internal Parallelism of Flash-based SSDs," Computer Architecture Letters , vol.9, no.1, pp.9,12, Jan. 2010.
  6. M.K. Qureshi, M.M. Franceschini, "Improving read performance of Phase Change Memories via Write Cancellation and Write Pausing," IEEE 16th International Symposium on High Performance Computer Architecture (HPCA) 2010.
  7. Daniel Pierre Bovet, et al., "Understanding the Linux Kernel", Chapter 14.2, 2003.
  8. S.-H. Park, S.-H. Ha, K. Bang, E.-Y. Chung, "Design and analysis of flash translation layers for multi-channel NAND flash-based storage devices," Consumer Electronics, IEEE Transactions on, vol.55, no.3, pp.1392-1400, August 2009. https://doi.org/10.1109/TCE.2009.5278005
  9. HY27UH08AG5M, Hynix Semiconductor Inc., www.hynix.com.
  10. A. Gupta, Y. Kim, and B. Urgaonkar, "Dftl: a flash translation layer employing demand-based selective caching of page-level address mappings," SIGPLAN Not., vol. 44, pp. 229- 240, March 2009.