Design and Implementation of Efficient Memory Allocator using Contiguous Allocation Scheme

연속할당 기법을 이용한 효과적인 lock-free 메모리 할당자 설계 및 구현

  • Kim, In-Hyuk (School of Information and Communication Eng., Sungkyunkwan University) ;
  • Kim, Tae-Hyoung (School of Information and Communication Eng., Sungkyunkwan University) ;
  • Eom, Young-Ik (School of Information and Communication Eng., Sungkyunkwan University)
  • 김인혁 (성균관대학교 정보통신공학부) ;
  • 김태형 (성균관대학교 정보통신공학부) ;
  • 엄영익 (성균관대학교 정보통신공학부)
  • Published : 2011.06.29

Abstract

멀티코어 환경에서는 공유 데이터에 대한 동기화로 인한 병목 현상이 중요한 문제점 중의 하나이다. 그리고 동적 메모리 할당자는 대량의 메모리를 할당 및 해제하는 프로그램에서 공유 데이터에 대한 동기화 문제로 성능 저하를 유발시키고 있다. 이를 해결하기 위해 다양한 lock-free 메모리 할당 기법들이 소개되었지만 false sharing과 heap blow-up과 같은 여러 가지 문제점들을 가지고 있다. 이에 본 논문에서는 새로운 연속할당 기법을 제안하고, 이를 이용하여 동일 블록 내의 오브젝트 할당/해제에 따른 동기화 문제를 해결함으로써 효과적인 lock-free 메모리 할당 기법을 제안하였다. 그리고 제안 기법을 구현하여 기존의 메모리 할당 기법들과 실험을 통하여 검증하였으며, 대량의 메모리를 사용하는 멀티 스레드 환경에서 특히 좋은 성능을 보이는 것을 확인하였다.

Keywords

Acknowledgement

Grant : 미래기반기술개발사업(첨단융복합분야)

Supported by : 한국연구재단