디지털 라이브러리[ 검색결과 ]
NUMA 아키텍처 기반 PM 자료구조를 고려한 노드 리플리케이션 설계
http://doi.org/10.5626/JOK.2022.49.1.8
최근 영속 메모리와 NUMA 기술의 발전으로 빅데이터, 머신 러닝 등의 응용에서 넓은 저장 공간과 높은 성능을 제공할 수 있게 되었다. 이와 같은 다중 노드 PM 환경은 모든 소프트웨어 스택의 핵심 기술 중의 하나인 자료구조의 변화를 요구한다. 그러나 PM의 중요한 특성인 비휘발성을 보장하는 것에서 더 나아가 NUMA 아키텍처가 지닌 높은 동시성을 끌어내는 것은 PM 자료구조 연구에서 어려운 문제이다. 이에 본 논문에서는 대표적인 NUMA 알고리즘인 노드 리플리케이션을 확장한 NRPM을 제안한다. 이는 공유 로그, 플랫 컴바이닝 기법을 응용하여 다중 노드 PM 환경에서 동시 실행 성능을 개선함으로써 NUMA-PM 환경에서 최대 5배 높은 hash 성능을 도출하였다. 또한, NUMA-PM의 특성을 반영한 다양한 성능 분석을 통해 제안 기술의 타당성을 확인하였다.
비휘발성 메모리의 동적 활용을 통한 서버 시스템 성능 및 사용성 향상
http://doi.org/10.5626/JOK.2021.48.10.1077
본 연구는 DIMM 인터페이스 기반의 비휘발성 메모리(PM)를 사용하는 컴퓨팅 시스템에서 PM을 관리하기 위한 메모리 관리 시스템을 개발하는 연구이다. PM은 메인 메모리, 스토리지, 또는 스토리지 캐시 레이어로 사용될 수 있다는 전제에서 연구되어 왔다. 본 연구에서는 이러한 역할을, 각각이 아니라, 동시에 할 수 있도록 하는, PM을 위한 메모리 관리 시스템을 개발한다. 이 관리 시스템을 하이브리드 메모리 관리 시스템(Hybrid Memory Management System, HMMS)이라 부른다. HMMS는 DRAM과 PM이 공존하는 환경을 가정하며 컴퓨팅 시스템 상태와 사용자의 요구 성질을 반영하여 이 세 가지 역할을 동적으로, 적절하게 배분한다. HMMS의 도입을 통해서 다양한 스케일의 컴퓨팅 시스템의 기능적, 성능적인 향상을 목표로 한다.
Opt Tree: Optane DCPM 내부 버퍼를 활용한 쓰기 최적화 트리
http://doi.org/10.5626/JOK.2021.48.7.742
최근 상용화된 비휘발성 메모리인 Intel사의 Optane DC Persistent Memory는 캐시 라인 단위 또는 워드 단위의 메모리 접근 명령을 256바이트 단위로 처리하는 내부 버퍼가 존재한다. 본 논문에서는 Optane DCPM의 내부 버퍼를 활용하는 인덱스인 Opt Tree를 제안한다. Opt Tree는 트리의 노드를 256 바이트 단위의 여러 작은 블록으로 나누어 노드 내의 데이터들을 분할 저장하며, 노드 접근 시에는 2개의 블록만을 접근하는 삽입 및 탐색 알고리즘을 가진다. Opt Tree는 Optane DCPM의 내부 버퍼에 친화적인 디자인과 알고리즘을 바탕으로 기존의 비휘발성 메모리를 위한 인덱스들보다 더 나은 삽입 성능을 보여준다.
NUMA의 특성을 고려한 원격 퍼시스턴트 메모리 디스어그리게이션
http://doi.org/10.5626/JOK.2021.48.7.735
데이터 센터 등 대규모 시스템에서 효율적인 리소스 관리를 위해 자원이 중심이 되는 디스어그리게이션 방법이 사용되고 있고 각 서버는 다수의 소켓을 가지는 NUMA 구조로 구성된다. NUMA 구조에서는 메모리의 원격 접근과 로컬 접근의 지연시간의 차이가 크고 이는 퍼시스턴트 메모리에서 더 크게 나타난다. 본 연구에서는 퍼시스턴트 메모리 디스어그리게이션 시스템에서 NUMA 구조의 로컬성을 고려하여 원격 NUMA 노드 메모리에 접근하는 수를 줄이는 메모리 디스어그리게이션 프레임워크 Xpass를 설계한다. Xpass는 캐싱한 페이지를 관리하기 위해 동적 해시 테이블 CCEH를 사용하며, NUMA 환경에서 NUMA 노드 간 로드 밸런싱을 고려하는 세그먼트 스플릿 알고리즘을 제안한다.
Intel Optane DC Persistent Memory 동작 방식 비교를 통한 DRAM 캐시 성능 분석
http://doi.org/10.5626/JOK.2020.47.10.893
차세대 비휘발성 메모리(Non-Volatile Memory)는 DRAM 용량 확장 한계의 대안 중 하나로 제시되어 활발히 연구되어 왔으며, 최근 Intel 사에서는 비휘발성 메모리 제품인 Optane DC Persistent Memory (DCPMM)를 출시하였다. 최신 Intel 서버는 DCPMM을 활용하기 위해 DCPMM을 메인 메모리, DRAM을 DCPMM의 캐시로 사용하는 Memory mode와, DCPMM과 DRAM을 독립적인 메모리로 사용하는 App Direct mode를 제공한다. 본 논문에서는 두 가지 동작 방식들의 성능을 비교하여, 응용프로그램의 워킹 셋 크기가 DRAM 크기보다 클수록 DRAM 캐시 미스 페널티(~70ns)로 인해 데이터를 DCPMM에만 할당한 경우보다 오히려 성능이 감소하는 것을 확인하였다. 이를 통해, Memory mode에서는 응용프로그램의 워킹 셋 크기가 DRAM 캐시보다 작거나 데이터 지역성이 보장되면 상대적으로 느린 DCPMM 접근에 따른 성능 감소를 최소화할 수 있으나, DRAM 캐시 미스 페널티로 인해 워킹 셋이 크고 데이터 지역성이 없는 환경에서는 App Direct mode를 사용하는 것이 성능 측면에서 더 유리할 수 있음을 보인다.
뉴메모리 기반 시스템에서 세밀한 COW 관리 기법을 통한 효율적 프로세스 체크포인팅 기법
본 연구에서는 뉴메모리 기반 컴퓨팅 시스템의 신뢰성을 높이기 위해 프로세스 단위로 체크포인팅하는 시스템을 설계하고 구현한다. 프로세스 체크포인팅을 위하여 일반적인 프로세스 실행에서 문맥전환이 일어나는 시점마다 결함이 발생하기 이전의 안전한 상태로 되돌아갈 수 있는 롤백 시점을 만든다. 본 연구에서는 롤백 시점의 안전한 프로세스 상태에 대한 새로운 프로세스를 만들며 이를 P-process(Persistent-process)라고 명명한다. P-process를 만드는 주기를 세밀한 간격인 문맥전환 때마다 만들기 때문에 결함이 발생하였을 때 롤백으로 인한 프로세스 실행시간 손실을 작게 만들 수 있다. P-process를 만드는 오버헤드를 줄이기 위하여 프로세스의 메모리 상태에서 변경된 부분만 저장할 수 있도록 COW(Copy-On-Write) 메커니즘을 이용하였다. 문맥전환 때마다 P-process를 생성하였을 때 PARSEC 벤치마크의 11개 워크로드 중 8개의 워크로드에서 5% 내의 실행 시간 오버헤드가 발생하였으며 오버헤드가 많이 발생한 워크로드도 P-process의 생성 주기의 조정으로 오버헤드를 감소시킬 수 있었다.