DOI QR코드

DOI QR Code

뉴메모리 기반 시스템에서 세밀한 COW 관리 기법을 통한 효율적 프로세스 체크포인팅 기법

Efficient Process Checkpointing through Fine-Grained COW Management in New Memory based Systems

  • 박재형 (울산과학기술원 컴퓨터공학과) ;
  • 문영제 (울산과학기술원 컴퓨터공학과) ;
  • 노삼혁 (울산과학기술원 전기전자컴퓨터공학부)
  • 투고 : 2016.08.31
  • 심사 : 2016.11.23
  • 발행 : 2017.02.15

초록

본 연구에서는 뉴메모리 기반 컴퓨팅 시스템의 신뢰성을 높이기 위해 프로세스 단위로 체크포인팅하는 시스템을 설계하고 구현한다. 프로세스 체크포인팅을 위하여 일반적인 프로세스 실행에서 문맥전환이 일어나는 시점마다 결함이 발생하기 이전의 안전한 상태로 되돌아갈 수 있는 롤백 시점을 만든다. 본 연구에서는 롤백 시점의 안전한 프로세스 상태에 대한 새로운 프로세스를 만들며 이를 P-process(Persistent-process)라고 명명한다. P-process를 만드는 주기를 세밀한 간격인 문맥전환 때마다 만들기 때문에 결함이 발생하였을 때 롤백으로 인한 프로세스 실행시간 손실을 작게 만들 수 있다. P-process를 만드는 오버헤드를 줄이기 위하여 프로세스의 메모리 상태에서 변경된 부분만 저장할 수 있도록 COW(Copy-On-Write) 메커니즘을 이용하였다. 문맥전환 때마다 P-process를 생성하였을 때 PARSEC 벤치마크의 11개 워크로드 중 8개의 워크로드에서 5% 내의 실행 시간 오버헤드가 발생하였으며 오버헤드가 많이 발생한 워크로드도 P-process의 생성 주기의 조정으로 오버헤드를 감소시킬 수 있었다.

We design and implement a process-based fault recovery system to increase the reliability of new memory based computer systems. A rollback point is made at every context switch to which a process can rollback to upon a fault. In this study, a clone process of the original process, which we refer to as a P-process (Persistent-process), is created as a rollback point. Such a design minimizes losses when a fault does occur. Specifically, first, execution loss can be minimized as rollback points are created only at context switches, which bounds the lost execution. Second, as we make use of the COW (Copy-On-Write)mechanism, only those parts of the process memory state that are modified (in page units) are copied decreasing the overhead for creating the P-process. Our experimental results show that the overhead is approximately 5% in 8 out of 11 PARSEC benchmark workloads when P-process is created at every context switch time. Even for workloads that result in considerable overhead, we show that this overhead can be reduced by increasing the P-process generation interval.

키워드

과제정보

연구 과제 주관 기관 : 삼성전자 미래기술육성센터

참고문헌

  1. Intel-Micron Memory 3D XPoint [Online]. Available: "http://www.intel.com/content/www/us/en/architecture-and-technology/non-volatile-memory.html"
  2. Sparsh Mittal, and Jeffrey S. Vetter, "A survey of Software techniques for using non-volatile memories for storage and main memory systems," Proc. of the IEEE Transactions on Parallel and Distributed Systems, 27.5 pp. 1537-1550 2016.
  3. S. Mittaland J. Vetter, "A survey of techniques for modeling and improving reliability of computing systems," Proc. of the IEEE Transactions on Parallel and Distributed Systems (TPDS), 2015.
  4. Dulloor, Subramanya R., et al. "System software for persistent memory," Proc. of the Ninth European Conference on Computer Systems. ACM, 2014.
  5. Ou Jiaxin, Jiwu Shu, and Youyou Lu, "A high performance file system for non-volatile main memory," Proc. of the 11th ACM EuroSys, 2016.
  6. Jian Xu, and Steven Swanson, "NOVA: a logstructured file system for hybrid volatile/nonvolatile main memories," 14th USENIX Conference on File and Storage Technologies (FAST 16), 2016.
  7. I. P. Egwutuoha, D. Levy, B. Selic, and S. Chen, "A survey of fault tolerance mechanisms and checkpoint/ restart implementations for high performance computing systems," At the Journal of Supercomputing, Vol. 65, No. 3, pp. 1302-1326, 2013. https://doi.org/10.1007/s11227-013-0884-0
  8. Oren Laadan and Serge E. Hallyn, "Linux-CR: transparent application checkpoint-restart in Linux," The Ottawa Linux Symposium, 2010.
  9. Amirreza Zarrabi, et al., "Linux support for fast transparent general purpose checkpoint/restart of multithreaded processes in loadable kernel module," At the Journal of Grid Computing, Vol. 11, pp. 187-210, 2013. https://doi.org/10.1007/s10723-013-9248-5
  10. S. Kannan, A. Gavrilovska, K. Schwan, and D. Milojicic, "Optimizing checkpoints using NVM as virtualmemory," Proc. of the International Symposium on Parallel& Distributed Processin, pp. 29-40, 2013.
  11. X. Dong, N. Muralimanohar, N. Jouppi, R. Kaufmann, and Y. Xie, "Leveraging 3D PCRAM technologies to reduce checkpoint overhead for future exascale systems," Proc. of the High Performance Computing Networking, Storageand Analysis, 2009.
  12. J. H. Kim, Y. J. Moon, and S. H. Noh, "An Experimental Study on the Effect of Asymmetric Memory Latency of New Memory on Application Performance," Proc. of the IEEE International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems (MASCOTS), 2016.
  13. The PARSEC Benchmark Suite [Online]. Available: http://parsec.cs.princeton.edu
  14. C. Bienia, S. Kumar, J. P. Singh, and K. Li, "The PARSEC Benchmark Suite: Characterization and Architectural Implications," Princeton University Technical Report (PACT), TR-811-08, Jan. 2008.