Skip to main content
QUICK REVIEW

[논문 리뷰] A DAG Model of Synchronous Stochastic Gradient Descent in Distributed Deep Learning

Shaohuai Shi, Qiang Wang|arXiv (Cornell University)|2018. 05. 10.
Advanced Neural Network Applications참고 문헌 24인용 수 8
한 줄 요약

이 논문은 분산 딥러닝에서 동기 스토케스틱 그래디언트 디센트(S-SGD)를 분석하고 최적화하기 위해 새로운 방향성 비순환 그래프(DAG) 모델을 제안한다. 이 모델은 계산 및 통신 단계를 명시적으로 모델링하며, 현대 GPU에서 고속 밴드폭 인터커넥트(예: InfiniBand, NVLink)를 사용하더라도 그래디언트 통신 오버헤드가 확장성의 한계를 정하는 것으로 밝혀졌고, I/O 및 그래디언트 집계를 계산과 겹쳐 통신 지연을 숨기는 방식으로 성능 향상을 위한 기회를 규명한다.

ABSTRACT

With huge amounts of training data, deep learning has made great breakthroughs in many artificial intelligence (AI) applications. However, such large-scale data sets present computational challenges, requiring training to be distributed on a cluster equipped with accelerators like GPUs. With the fast increase of GPU computing power, the data communications among GPUs have become a potential bottleneck on the overall training performance. In this paper, we first propose a general directed acyclic graph (DAG) model to describe the distributed synchronous stochastic gradient descent (S-SGD) algorithm, which has been widely used in distributed deep learning frameworks. To understand the practical impact of data communications on training performance, we conduct extensive empirical studies on four state-of-the-art distributed deep learning frameworks (i.e., Caffe-MPI, CNTK, MXNet and TensorFlow) over multi-GPU and multi-node environments with different data communication techniques, including PCIe, NVLink, 10GbE, and InfiniBand. Through both analytical and experimental studies, we identify the potential bottlenecks and overheads that could be further optimized. At last, we make the data set of our experimental traces publicly available, which could be used to support simulation-based studies.

연구 동기 및 목표

  • 동기 SGD를 사용한 분산 딥러닝 훈련에서 데이터 통신의 성능 영향을 이해하기 위해.
  • 다양한 GPU 및 다중 노드 환경에서 최신 딥러닝 프레임워크(Caffe-MPI, CNTK, MXNet, TensorFlow)의 확장성 제한을 분석하기 위해.
  • 고성능 GPU에서 효율적인 확장을 방해하는 통신, I/O, 계산 분야의 시스템 수준 병목 현상을 규명하기 위해.
  • 시뮬레이션 기반 성능 연구 및 프레임워크 최적화를 위한 공개 가능한 계층별 트레이스 데이터셋을 제공하기 위해.

제안 방법

  • 노드가 계산 또는 통신 작업을 나타내고, 간선이 S-SGD 워크플로우 내의 순서 제약 조건을 표현하는 일반적인 DAG 모델을 개발한다.
  • DAG 모델을 사용하여 스케줄링 전략을 분석하며, 특히 통신 지연을 숨기기 위해 I/O 및 그래디언트 집계를 계산과 겹치는 방식을 고려한다.
  • PCIe, NVLink, 10GbE, InfiniBand를 사용한 다중 GPU 및 다중 노드 클러스터에서 네 가지 딥러닝 프레임워크(Caffe-MPI, CNTK, MXNet, TensorFlow)를 실증적으로 평가한다.
  • K80 및 V100 GPU에서 AlexNet, GoogleNet, ResNet-50에 대해 계층별 성능 트레이스(전방/역전파 시간, 그래디언트 통신 시간, 그래디언트 크기)를 수집하고 공개한다.
  • 다양한 통신 기법과 프레임워크별 특화된 구현 방식이 훈련 반복 시간과 확장 효율성에 미치는 영향을 분석한다.
  • Caffe-MPI에서 실제 측정값과 비교하여 DAG 모델의 예측 정확도를 검증하였으며, 평균 오차는 4.6–9.4%를 기록했다.

실험 결과

연구 질문

  • RQ1PCIe, NVLink, 10GbE, InfiniBand와 같은 다양한 데이터 통신 기술이 분산 딥러닝에서 S-SGD의 훈련 성능에 어떤 영향을 미치는가?
  • RQ2현재의 딥러닝 프레임워크들이 작업 겹침(예: I/O 및 그래디언트 집계를 계산과 겹침)을 통해 통신 오버헤드를 얼마나 효과적으로 숨기고 있는가?
  • RQ3InfiniBand와 같은 고급 인터커넥트를 사용하더라도 V100과 같은 고성능 GPU에서 프레임워크의 확장성이 떨어지는 이유는 무엇인가?
  • RQ4그래디언트 통신의 성능 병목 현상은 무엇이며, 이는 다양한 신경망 아키텍처 간에 어떻게 다를 수 있는가?
  • RQ5DAG 모델은 훈련 반복 시간을 정확히 예측할 수 있으며, 이를 통해 분산 훈련의 최적화 전략을 안내할 수 있는가?

주요 결과

  • DAG 모델은 실제 Caffe-MPI 측정값과 비교해 평균 예측 오차가 AlexNet 기준 9.4%, GoogleNet 기준 4.7%, ResNet-50 기준 4.6%로, 훈련 반복 시간을 정확하게 예측한다.
  • CNTK는 그래디언트 통신을 계산과 겹치지 않아, Caffe-MPI, MXNet, TensorFlow보다 더 높은 통신 오버헤드와 열악한 확장성 성능을 보인다.
  • 100Gbps InfiniBand를 사용하더라도 V100 GPU에서 그래디언트 통신이 여전히 병목 현상이 되며, 특히 텐서 코어를 사용할 경우 노드 간 통신 최적화가 부족하기 때문이다.
  • 역전파 중 계층별 통신 패턴으로 인해 InfiniBand에서 네트워크 대역폭 활용도가 낮게 나타나, 데이터 전송 스케줄링이 비효율적임을 시사한다.
  • 제안된 DAG 모델은 I/O를 계산과 겹치는 것과 그래디언트 집계를 계산과 겹치는 것의 두 가지 핵심 최적화 기회를 드러내며, 이는 모두 확장 효율성을 향상시킬 수 있다.
  • 공개된 트레이스 데이터셋은 K80 및 V100 GPU에서 세 가지 CNN(AlexNet, GoogleNet, ResNet-50)에 대해 계층별 시간 및 그래디언트 크기 측정값을 포함하며, 시뮬레이션 기반 성능 분석 및 프레임워크 평가를 가능하게 한다.

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

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

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

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