Skip to main content
QUICK REVIEW

[논문 리뷰] Unimem: Runtime Data Management on Non-Volatile Memory-based Heterogeneous Main Memory

Kai Wu, Yingchao Huang|arXiv (Cornell University)|2017. 04. 29.
Parallel Computing and Optimization Techniques참고 문헌 14인용 수 9
한 줄 요약

Unimem는 하드웨어 수정이나 응용 프로그램 변경 없이 비揮성 메모리(NVM) 기반 이종 주요 메모리(HMS) 아키텍처에서 자동으로 데이터 배치를 관리하는 소프트웨어 중심 런타임 시스템이다. 온라인 프로파일링, 경량 성능 모델, 보조 스레드를 통한 사전 데이터 이동을 활용하여 Unimem은 다양한 HPC 워크로드에서 NVM 단독 시스템과 DRAM 단독 시스템 간의 성능 격차를 7% 이내로 줄인다.

ABSTRACT

Non-volatile memory (NVM) provides a scalable and power-efficient solution to replace DRAM as main memory. However, because of relatively high latency and low bandwidth of NVM, NVM is often paired with DRAM to build a heterogeneous memory system (HMS). As a result, data objects of the application must be carefully placed to NVM and DRAM for best performance. In this paper, we introduce a lightweight runtime solution that automatically and transparently manage data placement on HMS without the requirement of hardware modifications and disruptive change to applications. Leveraging online profiling and performance models, the runtime characterizes memory access patterns associated with data objects, and minimizes unnecessary data movement. Our runtime solution effectively bridges the performance gap between NVM and DRAM. We demonstrate that using NVM to replace the majority of DRAM can be a feasible solution for future HPC systems with the assistance of a software-based data management.

연구 동기 및 목표

  • 이종 메모리 시스템(HMS)에서 효율적인 데이터 배치를 통해 HPC 시스템에서 NVM과 DRAM 간의 성능 격차를 해소한다.
  • 하드웨어 수정, 운영체제 변경, 프로그래머의 개입 없이도 데이터 배치 결정을 가능하게 한다.
  • 실행 단계에 따라 변화하는 메모리 액세스 패턴에 적응하고 반응하는 데이터 배치를 보장하면서 데이터 이동에 따른 성능 오버헤드를 최소화한다.
  • 기존 HPC 응용 프로그램이 새로운 NVM 기반 주요 메모리 아키텍처에서 투명하고 자동으로 데이터 관리를 받을 수 있도록 한다.

제안 방법

  • 성능 카운터를 사용한 온라인 프로파일링을 통해 메모리 액세스 패턴과 데이터 객체의 대역폭 및 지연에 대한 민감도를 특성화한다.
  • NVM과 DRAM 간 데이터 이동의 성능 이득과 비용을 예측하기 위한 경량 성능 모델을 개발한다.
  • 이득을 극대화하면서 불필요한 데이터 이동을 최소화하기 위해 데이터 배치 결정을 배낭 문제로 공식화한다.
  • 보조 스레드를 활용한 사전 데이터 이동 메커니즘을 구현하여 데이터 마이그레이션을 응용 프로그램 실행과 겹쳐 성능 오버헤드를 숨긴다.
  • 대규모 데이터 객체를 분해하여 최초의 데이터 배치 최적화와 세밀한 이동을 지원함으로써 적응성 향상과 비용 감소를 달성한다.
  • 국소 단계 수준의 탐색과 전역 단계 간 최적화를 균형 있게 조율하여 근사 최적의 데이터 배치 결정을 이룬다.

실험 결과

연구 질문

  • RQ1하드웨어나 응용 프로그램 변경 없이 NVM-DRAM 이종 주요 메모리에서 데이터 배치를 자동으로 투명하게 관리할 수 있는 방법은 무엇인가?
  • RQ2효과적인 데이터 배치 결정을 내리기 위해 반드시 캡처해야 할 성능 특성(대역폭 대 지연 민감도)은 무엇인가?
  • RQ3실행 단계에 따라 변화하는 메모리 액세스 패턴에 적응하면서도 데이터 이동을 최소화하는 방법은 무엇인가?
  • RQ4실제 HPC 워크로드에서 데이터 이동의 성능 비용을 효과적으로 숨길 수 있는 메커니즘은 무엇인가?
  • RQ5소프트웨어 기반 데이터 관리 방식으로 NVM 단독 시스템과 DRAM 단독 시스템 간의 성능 격차를 어느 정도 줄일 수 있는가?

주요 결과

  • Unimem은 CG, MG 및 기타 다양한 HPC 워크로드에서 NVM 단독 시스템과 DRAM 단독 시스템 간의 성능 격차를 7% 이내로 줄였다.
  • 128MB DRAM이라는 가장 도전적인 구성에서도 Unimem는 제한된 DRAM 용량과 큰 비분해 가능한 데이터 객체로 인한 낮은 활용도에도 불구하고 성능 격차를 35% 줄였다.
  • 다양한 DRAM 크기와 메모리 액세스 패턴에서도 응용 프로그램 성능에 미치는 영향을 최소화하면서 거의 투명한 운영을 유지한다.
  • 보조 스레드를 통한 사전 데이터 이동이 성공적으로 이동 오버헤드를 숨기며, 데이터 마이그레이션을 핵심 경로에서 제외시켰다.
  • 온라인 프로파일링, 성능 모델링, 배낭 기반 최적화의 조합이 저런티드 런타임 비용으로 효과적이고 적응 가능한 데이터 배치를 가능하게 했다.
  • 다양한 워크로드와 구성에서도 강건하게 작동하여 NVM 기반 시스템에 대한 실세계 HPC 구현 가능성을 입증했다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.