검색 상세

클라우드 Spot VM을 사용하는 분산 딥러닝 워크로드의 가용성 지원을 위한 원격 메모리 기반 다중 레벨 체크포인팅 연구

A Remote Memory-based Multilevel Checkpointing Framework to Support Availability of Distributed Deep Learning Workloads Using Cloud Spot VM

초록 (요약문)

최근 딥러닝 워크로드의 규모가 점점 커져가면서 멀티 GPU를 활용한 분산 딥러닝 기법이 널리 쓰이고 있다. 그런데 분산 딥러닝 워크로드는 멀티 디바이스 혹은 멀티 노드로 구성된 클러스터를 필요로 하기 때문에, 상당한 양의 컴퓨팅 자원이 요구된다. 온-프레미스 서버가 없고, 예산 제약에 민감한 사용자는 클라우드 Spot VM을 대안으로 선택할 수 있다. 클라우드 Spot VM은 정상가로 공급되는 온디맨드 VM보다 상당히 저렴한 가격으로 이용 가능한 클라우드 서비스이다. 하지만, Spot VM은 수요와 공급 그리고 가격 변동에 따라 클라우드 서비스 제공업체에 의한 중단(선점)에 취약하다는 문제가 있다. Spot VM의 중단(선점)은 하드웨어 서버 장애와 유사하며, 물리적 메모리와 로컬 디스크의 손실을 초래한다. 따라서, 클라우드 Spot VM을 이용하여 분산 딥러닝을 수행할 경우, 높은 비용-효율성의 장점 이면에 존재하는 낮은 가용성에 대한 주의가 필요하다. 이 같은 클라우드 Spot VM 환경에서 분산 딥러닝 워크로드의 잠재적인 중단이나 장애를 해결하기 위해, 본 논문에서는 Spot VM 환경을 위해 특별히 설계된 체크포인팅 프레임워크 DASH를 제안한다. DASH는 안정적인 원격 VM의 메모리를 체크포인팅 영역으로 활용하여 심층신경망 학습 과정과 분리된 방식의 파일 쓰기를 지원한다. 또한, 비동기식의 최적화된 메모리 데이터 복사 및 전송을 적용해 체크포인팅으로 인한 스톨을 최소화한다. Amazon AWS VM 인스턴스를 사용하여 다양한 분산 딥러닝 워크로드에 대해 광범위하게 평가한 결과, DASH는 기존 PyTorch 체크포인팅 모듈 대비 추가적으로 발생하는 학습시간 오버헤드를 99.9% 이상 줄였다. 뿐만 아니라, 본 논문은 DASH가 기본 PyTorch 체크포인팅 모듈보다 평균 48.5% 더 빠르게 체크포인트 데이터를 영속적인 스토리지로 체크포인팅하는 것을 보인다.

more

초록 (요약문)

In recent years, distributed deep learning techniques utilizing multiple GPUs have become popular as deep learning workloads have grown in size. However, since distributed deep learning workloads require multi-device or multi-node clusters, they require a significant amount of computing resources. If there is no on premise server and a task is budget-conscious, cloud Spot VMs can be an alternative. A Spot VM is a cloud service that is available at a significantly lower price than a full-priced on-demand VM. However, Spot VMs are vulnerable to interruption (preemption) by cloud service providers based on supply and demand and price fluctuations. A Spot VM interruption is almost the same as a hardware server failure, resulting in the loss of physical memory and local disk. Therefore, when using cloud Spot VMs to perform distributed deep learning, it is necessary to pay attention to the low availability that exists behind the advantages of high cost-effectiveness. To address the potential interruptions and failures of distributed deep learning workloads in such cloud Spot VM environments, this paper proposes DASH, a checkpointing framework specifically designed for Spot VM environments. DASH utilizes the memory of a stable remote VM as a checkpointing area to support file write in a decoupled manner from the deep neural network training process. It also minimizes stalls caused by checkpointing by applying asynchronous and optimized memory data copy and transfer. After extensive evaluation on a variety of distributed deep learning workloads using Amazon AWS VM instances, we show that DASH reduces the additional training time overhead by more than 99.9% compared to the existing PyTorch checkpointing module. In addition, the paper shows that DASH checkpoints checkpoint data to persistent storage on average 48.5% faster than the native PyTorch checkpointing module.

more