검색 상세

누마스토어 : 매니코어 시스템에서 메모리 버스 연결 저장 장치를 위한 누마 인지 저장 장치 관리자

NUMA-store : NUMA Aware Storage Manager for Memory Bus Connected Storage Device Over Manycore Systems

초록/요약

원하는 결과를 얻기까지 오랜시간 동안 수행되는 특징을 갖고 있는 고성능 컴퓨팅(High Performance Computing)의 응용(application)들은 불시에 발생할 수 있는 장애를 극복 할 수 있게 하기 위하여 응용 또는 시스템의 동작 상태를 영구 저장 장치에 기록하는 체크포인팅 (Checkpointing), 로깅(Logging)과 같은 기법을 많이 사용하고 있다. 이러한 기법들의 사용은 시스템의 성능에 많은 영향을 미치고 있으며, 성능 손실을 최소화 하기 위하여 빠른 파일 쓰기 성능을 필요로 하고 있다. 빠른 파일 쓰기를 위하여 빠른 저장 장치 사용이 증가하고 있으며 이와 관련한 연구들이 지속적으로 수행되고 있다. 최근 메모리 기술의 발달로 메모리 버스에 연결하여 사용하는 메모리 저장 장치(Memory Bus connected Storage, 이하 MBS) 를 사용할 수 있게 되었다. 다양한 분야에서 빠른 저장 장치인 MBS의 사용이 증가하고 있으며 매니코어 누마(Non-Uniform Memory Access) 구조의 시스템에 설치하여 사용되고 있다. 누마 시스템은 중앙처리장치(Central Processing Unit)와 메모리 버스에 연결된 장치와의 거리에 따라 접근 지연시간이 다른 특성을 갖고 있으며 접근 지연 시간은 MBS를 사용하는 응용의 파일 처리 성능에 영향을 주는 주요 요인이다. 리눅스에서 MBS를 사용하기 위한 기법들이 제공되고 있으나 누마 시스템의 특성을 고려하고 있지 않아 빠른 MBS의 성능 특성을 활용하지 못하고 있다. 사용자가 MBS의 위치와 프로세스의 위치를 지정하는 개입이 없으면 다른 노드에 설치된 MBS를 사용해야 하는 경우가 발생하여 파일처리 성능이 떨어지게 된다. 이러한 문제를 해결하기 위하여 본 논문에서는 매니코어 누마 시스템에서 MBS의 접근 지연시간을 고려하여 저장 공간을 할당 받을 수 있는 누마스토어 사용을 제안한다. 누마 시스템에서 수행한 다양한 파일 처리 성능 측정 결과 분석 내용을 기반으로 설계하고 구현한 누마스토어는 중앙처리장치와 사용가능한 MBS와의 접근 지연시간을 고려한 저장 공간 할당을 통하여 빠른 파일 쓰기를 가능하게 하여주고 이를 통해 전제 시스템의 성능을 높일 수 있다. 누마스토어는 노드에 분산 설치된 MBS들을 커널 부팅과정에서 인식하여 하나의 저장장치로 구성하여 하나의 주소공간에서 사용할 수 있도록 관리하는 MBS 주소공간 관리자와 접근 지연시간과 저장공간 사용 상태를 감시하여 가장 작은 접근 지연시간을 갖는 노드의 MBS로 부터 저장공간을 할당 받기 위한 MBS 주소공간 관리자로 구성되어 있다. 누마스토어의 성능 평가를 위해 파일 데이터만을 DRAM에 저장하는 tmpfs를 기반으로 하여 누마노드의 분산되어 있는 MBS에 파일 데이터를 저장할 수 있는 tmpfsNS(tmpfs for NUMA-Store)를 구현하였으며 4개의 노드를 갖고 있는 누마시스템에서 tmpfsNS가 tmpfs 보다 최고 20배 높은 성능을 얻을 수 있음을 확인하였다. 이러한 성능 평가 실험 결과는 MBS를 사용하는 누마 시스템에서 중앙처리장치와 메모리버스에 연결된 저장장치간의 접근 지연시간를 고려한 파일 배치가 파일 처리 성능에 중요한 요인임을 보여주고 있다. 본 연구에서 제안하는 누마스토어는 MBS 사용 특성에 맞춰어 파일 처리 경로를 간소화 하고 누마를 인지하여 파일 저장 공간 할당 기법을 제공하고 있으며 리눅스에서 제공되는 DAX 파일시스템이 이러한 기능을 사용할 수 있는 인터페이스를 제공함으로써 MBS를 사용하는 누마시스템에서 시스템 성능을 높여주며 리눅스에서 구현되어 관련 연구 활용이 가능하다.

more