DOI QR코드

DOI QR Code

An Efficient Page-Level Mapping Algorithm for Handling Write Requests in the Flash Translation Layer by Exploiting Temporal Locality

플래시 변환 계층에서 시간적 지역성을 이용하여 쓰기 요청을 처리하는 효율적인 페이지 레벨 매핑 알고리듬

  • Li, Hai-Long (Sogang University Department of Electronic Engineering) ;
  • Hwang, Sun-Young (Sogang University Department of Electronic Engineering)
  • Received : 2016.08.11
  • Accepted : 2016.09.28
  • Published : 2016.10.31

Abstract

This paper proposes an efficient page-level mapping algorithm that reduces the erase count in the FTL for flash memory systems. By maintaining the weight for each write request in the request buffer, the proposed algorithm estimates the degree of temporal locality for each incoming write request. To exploit temporal locality deliberately for determination of hot request, the degree of temporal locality should be much higher than the reference point determined experimentally. While previous LRU algorithm treats a new write request to have high temporal locality, the proposed algorithm allows write requests that are estimated to have high temporal locality to access hot blocks to store hot data intensively. The pages are more frequently updated in hot blocks than warm blocks. A hot block that has most of invalid pages is always selected as victim block at Garbage Collection, which results in delayed erase operation and in reduced erase count. Experimental results show that erase count is reduced by 9.3% for real I/O workloads, when compared to the previous LRU algorithm.

본 논문에서는 플래시 메모리의 FTL에서 페이지 매핑 기법을 기반으로 소거횟수를 줄이는 알고리듬을 제안한다. 제안된 알고리듬은 버퍼에서 매 쓰기요청들의 가중치들을 유지하고 이용하여 현재 쓰여질 요청의 시간적 지역성의 정도를 판단한다. 시간적 지역성을 효율적으로 이용하여 핫 요청을 판단하기 위해 현재 쓰여질 요청은 실험적으로 정한 기준점보다 높은 시간적 지역성을 가져야 한다. 반면 LRU 알고리듬을 이용한 FTL에서는 새로 쓰여질 요청을 항상 시간적 지역성이 높은 요청으로 판단하여 데이터를 순차적으로 저장하지만 제안된 알고리듬을 사용하여 판단된 핫 요청들의 데이터는 핫 블록에 집중적으로 저장한다. 핫 블록에 저장된 데이터들은 웜 블록의 데이터들보다 자주 업데이트되어 Garbage Collection 수행 시 핫 블록들 중 무효한 페이지가 많은 블록이 주로 희생블록으로 선택되므로 소거연산의 시작을 지연시켜 전체 소거횟수를 줄인다. 임의적인 요청을 위주로 하는 실제 I/O시스템에서 추출한 트레이스 파일들을 적용하여 검증한 결과, 기존의 LRU 알고리듬을 사용하는 경우에 비해 소거횟수는 9.3% 줄어들었다.

Keywords

References

  1. Intel Corporation, OLTP Performance Comparison: Solid state Drives vs. Hard Disk Drives, Retrieved Jan. 2009, from http://www.principledtechnologies.com/Inetel/OLTPSSDPerf0109.pdf.
  2. S. Lee, B. Moon, and C. Park, "Advances in flash memory SSD technology for enterprise database applications," in Proc. Management of Data Conf., pp. 863-870, New York, NY, Jun. 2009.
  3. D. Ma, J. Feng, and G. Li, "A survey of address translation technologies for flash memories," ACM Computing Surveys, vol. 46, no. 3, Article 36, Jan. 2014.
  4. S. Lee and H. Bahn, "Characterizing memory references for smartphone applications and its implications," J. Semiconductor Technol. Sci., vol. 15, no. 2, Apr. 2015.
  5. Q. Wei, et al., "Z-MAP: A zone-based flash translation layer with workload classification for solid-state drive," ACM Trans. Storage, vol. 11, no. 1, Article 4, Feb. 2015.
  6. J. Hsieh, T. Kuo, and L. Chang, "Efficient identification of hot data for flash memory storage systems," ACM Trans. Storage, vol. 2, no. 1, pp. 22-40, Feb. 2006. https://doi.org/10.1145/1138041.1138043
  7. A. Gupta, Y. Kim, and B. Urgaonkar, "DFTL: A flash translation layer employing demand-based selective caching of page-level address mappings," in Proc. Architectural Support for Program. Lang. Operating Syst. Conf., pp. 229-240, New York, NY, Mar. 2009.
  8. D. Kim and S. Hwang, "An efficient wear-leveling algorithm for NAND flash SSD with multi-channel and multi-way architecture," J. KICS, vol. 39B, no. 7, pp. 425-432, Jul. 2014. https://doi.org/10.7840/kics.2014.39B.7.425
  9. L. Chang, Y. Liu, and W. Lin, "Stable greedy: Adaptive garbage collection for durable page-mapping multichannel SSDs," ACM Trans. Embed. Comput. Syst., vol. 15, no. 13, Article 13, Jan. 2016.
  10. J. Kim, et al., "A space-efficient flash translation layer for compactflash systems," IEEE Trans. Consumer Electron., vol. 48, no. 2, pp. 366-375, May 2002. https://doi.org/10.1109/TCE.2002.1010143
  11. S. Choe, H. Cho, and T. Chung, "Garbage collection-centric FTL for improving the processing delay of flash memory," J. KIISE, vol. 40, no. 4, pp. 181-192, Aug. 2013.
  12. J. Kang, et al., "A superblock-based flash translation layer for NAND flash memory," in Proc. Embedded software Conf., pp. 161-170, New York, NY, Oct. 2006.
  13. S. Lee, et al., "LAST: Locality-aware sector translation for NAND flash memory-based storage systems," ACM SIGOPS Operating Syst. Rev., vol. 42, no. 6, pp. 36-42, Oct. 2008. https://doi.org/10.1145/1453775.1453783
  14. S. Leutenegger and D. Dias, "A modeling study of the TPC-C benchmark," in Proc. Management Data Conf., pp. 22-31, New York, NY, Jun. 1993.
  15. N. Agrawal, et al., "Design tradeoffs for SSD performance," in Proc. USENIX Technical Conf., Berkeley, CA, Jun. 2008.
  16. S. Lim, S. Lee, and B. Moon, "FASTer FTL for enterprise-class flash memory SSDs," in Proc. Storage Netw. Architecture and Parallel I/Os, Ipp. 3-12, ncline Village, NV, Sept. 2010.
  17. R. Karedla, J. Love, and B. Wherry, "Caching strategies to improve disk system performance," IEEE Comput., vol. 27, no. 3, pp. 38-46, Mar. 1994.
  18. The DiskSim Simulation Environment Version 3.0 Reference Manual, CMU, Jan. 2003.
  19. Y. Kim, B. Tauras, A. Gupta, and B. Urgaonkar, "FlashSim: A simulator for NAND flash-based solid-state drives," in Proc. Advances in Syst. Simulation Conf., pp. 125-131, Porto, Portugal, Sept. 2009.
  20. OLTP and Web Search Traces from Umass Trace Repository, http://traces.cs.umass.edu/index.php/Storage/Storage.
  21. Block I/O Traces from IOTTA Repository, http://iotta.snia.org/tracetypes/3.

Cited by

  1. 무선 센서 네트워크에서 플래시 장치를 활용한 에너지 효율적 저장 vol.42, pp.5, 2016, https://doi.org/10.7840/kics.2017.42.5.975