Design of Optimized SWAP System for Next-Generation Storage Devices

차세대 저장 장치에 최적화된 SWAP 시스템 설계

  • 한혁 (동덕여자대학교 컴퓨터학과)
  • Received : 2014.12.10
  • Accepted : 2015.02.09
  • Published : 2015.04.28


On modern operating systems such as Linux, virtual memory is a general way to provide a large address space to applications by using main memory and storage devices. Recently, storage devices have been improved in terms of latency and bandwidth, and it is expected that applications with large memory show high-performance if next-generation storage devices are considered. However, due to the overhead of virtual memory subsystem, the paging system can not exploit the performance of next-generation storage devices. In this study, we propose several optimization techniques to extend memory with next-generation storage devices. The techniques are to allocate block addresses of storage devices for write-back operations as well as to configure the system parameters, and we implement the techniques on Linux 3.14.3. Our evaluation through using multiple benchmarks shows that our system has 3 times (/24%) better performance on average than the baseline system in the micro(/macro)-benchmark.


Operating System;Virtual Memory;Memory Extension;SWAP;Next-;Generation Storage Device Linux


  2. M. Saxena and M. M. Swift, "Flashvm: Virtual memory management on flash," In Proceedings of the 2010 USENIX conference on USENIX Annual Technical Conference (USENIXATC'10), 2010.
  3. A. Badam and V. S. Pai, "Ssdalloc: hybrid ssd/ram memory management made easy," In Proceedings of the 2011 USENIX conference on Networked systems design and implementation (NSDI'11), 2011.
  4. B. Van Essen, H. Hsieh, S. Ames, and M. Gokhale, "DI-MMAP: A High Performance Memory-Map Runtime for Data-Intensive Applications," In Proceedings of the 2012 SC Companion: High Performance Computing, Networking Storage and Analysis (SCC'12), 2012.
  6. S. Park, D. Jung, J. Kang, J. Kim, and J. Lee, "CFLRU: a replacement algorithm for flash memory," In Proceedings of the 2006 international conference on Compilers, architecture and synthesis for embedded systems (CASES'06), 2006.
  8. S. Liang, R. Noronha, and D. K. Panda, "Swapping to remote memory over InfiniBand: An Approach using a High Performance Network Block Device," In Proceedings of the 2005 IEEE Cluster Computing (Cluster'05), 2005.
  9. X. Wu and A. L. N. Reddy, "SCMFS: A file system for storage class memory," In Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis (SC'11), 2011.
  10. J. Condit, E. B. Nightingale, C. Frost, E. Ipek, B. Lee, D. Burger, and D. Coetzee, "Better I/O through byte-addressable, persistent memory," In Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles (SOSP'09), 2009.
  11. J. Coburn, T. Bunker, M. Schwarz, R. Gupta, and S. Swanson, "From aries to mars: Transaction support for next-generation, solid-state drives," In Proceedings of the 24th ACM Symposium on Operating Systems Principles (SOSP'13), 2013.
  12. A. Huffman, "NVM Express Overview & Ecosystem Update," In Proceedings of the 2013 Flash Memory Summit, 2013.
  14. 손인국, 류은경, 박준호, 복경수, 유재수, "맵-리듀스의 처리 속도 향상을 위한 데이터 접근 페턴에 따른 핫-데이터 복제 기법", 한국콘텐츠학회논문지, 제13권, 제11호, pp.21-27, 2013(11).
  15. 김석규, 김직수, 김상완, 노승우, 김서영, 황순욱, "슈퍼컴퓨팅환경에서의 대규모 계산 작업 처리기술 연구", 한국콘텐츠학회논문지, 제14권, 제5호, pp.8-17, 2014(5).