[논문 리뷰] HyPar-Flow: Exploiting MPI and Keras for Scalable Hybrid-Parallel DNN Training using TensorFlow
HyPar-Flow는 사용자에게 투명하고 확장 가능한 프레임워크로, 텐서플로우, MPI 및 익명 실행을 사용하여 어떤 Keras 기반 DNN의 하이브리드 병렬 학습을 가능하게 한다. 이 프레임워크는 효율적인 MPI 기반 통신과 파ip라이닝을 통해 동적으로 모델/데이터 병렬성을 조율함으로써, Frontera 노드 512대에서 ResNet-1001에 대해 단일 노드 학습 대비 최대 481배의 성능 향상을 달성한다.
To reduce training time of large-scale DNNs, scientists have started to explore parallelization strategies like data-parallelism, model-parallelism, and hybrid-parallelism. While data-parallelism has been extensively studied and developed, several problems exist in realizing model-parallelism and hybrid-parallelism efficiently. Four major problems we focus on are: 1) defining a notion of a distributed model across processes, 2) implementing forward/back-propagation across process boundaries that requires explicit communication, 3) obtaining parallel speedup on an inherently sequential task, and 4) achieving scalability without losing out on a model's accuracy. To address these problems, we create HyPar-Flow --- a model-size/-type agnostic, scalable, practical, and user-transparent system for hybrid-parallel training by exploiting MPI, Keras, and TensorFlow. HyPar-Flow provides a single API that can be used to perform data, model, and hybrid parallel training of any Keras model at scale. We create an internal distributed representation of the user-provided Keras model, utilize TF's Eager execution features for distributed forward/back-propagation across processes, exploit pipelining to improve performance and leverage efficient MPI primitives for scalable communication. Between model partitions, we use send and recv to exchange layer-data/partial-errors while allreduce is used to accumulate/average gradients across model replicas. Beyond the design and implementation of HyPar-Flow, we also provide comprehensive correctness and performance results on three state-of-the-art HPC systems including TACC Frontera (#5 on Top500.org). For ResNet-1001, an ultra-deep model, HyPar-Flow provides: 1) Up to 1.6x speedup over Horovod-based data-parallel training, 2) 110x speedup over single-node on 128 Stampede2 nodes, and 3) 481x speedup over single-node on 512 Frontera nodes.
연구 동기 및 목표
- GPU 메모리 한계를 초월하는 초초기 및 대규모 DNN 학습 문제를 해결하기 위해 모델 병렬 및 하이브리드 병렬 학습을 가능하게 하라.
- 다중 프로세스 간 분산된 순방향/역방향 전파를 직접 통신을 통해 구현하는 복잡성을 극복하라.
- 모델 정의 변경이나 수동 분할이 필요 없는 통합된 사용자 투명 API를 제공하여 데이터 병렬, 모델 병렬, 하이브리드 병렬 간 원활한 전환을 가능하게 하라.
- 모델 정확도를 훼손하지 않으면서도 초고성능과 높은 확장성을 달성하라. 특히 ResNet-1001 및 실험용 5,000층의 ResNet-5000에 대해서도 마찬가지다.
- 사용자로부터 저수준의 통신 및 조율 작업을 추상화하여 HPC 시스템에서 오브코어 모델 학습을 가능하게 하라.
제안 방법
- 모델 수정 없이 Keras 모델, 모델 파artitions 수, 복제 수, 학습 전략(데이터, 모델, 또는 하이브리드)을 수락하는 단일 고수준 API를 노출한다.
- 내부적으로 프로세스 간 분할된 Keras 모델을 기반으로 분산 모델 표현을 구성하고, 데이터 병렬성을 위해 노드 간 파artitions를 복제한다.
- 텐서플로우의 익명 실행을 활용하여 프로세스 경계를 넘는 동적이고 분산된 순방향 및 역방향 전파를 직접 통신과 함께 구현한다.
- MPI 프리미티브를 사용하여 파artitions 간 레이어 데이터 및 부분 기울기 교환을 위해 send/recv를, 복제 간 기울기 집계를 위해 allreduce를 활용한다.
- 최적화된 파이프라인 스테이지 크기(128)를 사용하여 배치 파artitions 간 파이프라인을 구현함으로써 통신 지연을 숨기고 처리량을 향상시킨다.
- 분할, 배치, 통신 등의 시스템 수준의 복잡성을 Trainer 및 통신 엔진 내부에 추상화하여 사용자 투명성을 보장한다.
실험 결과
연구 질문
- RQ1대규모 HPC 시스템에서 다양한 Keras 모델의 하이브리드 병렬 학습을 효율적으로 지원할 수 있는 통합적이고 사용자 투명한 프레임워크가 존재하는가?
- RQ2모델 병렬성과 데이터 병렬성을 효과적으로 융합하여 정확도를 훼손하지 않으면서도 고성능 확장성을 달성할 수 있는가?
- RQ3딥러닝 학습 워크로드에서 파artition 간 및 복제 간 통신에 MPI 프리미티브를 사용할 경우 성능에 어떤 영향을 미치는가?
- RQ4HyPar-Flow는 단일 GPU 시스템의 메모리 한계를 초월하는 초초기 모델, 예를 들어 ResNet-1001 및 ResNet-5000의 학습을 어느 정도로 확장할 수 있는가?
- RQ5현대의 HPC 플랫폼에서 HyPar-Flow의 하이브리드 병렬 처리 방식은 기존의 전통적 데이터 병렬 처리 방식에 비해 속도 향상과 효율성 측면에서 어떻게 비교되는가?
주요 결과
- 대규모 시스템에서 ResNet-1001에 대해 Horovod 기반 데이터 병렬 학습 대비 최대 1.6배의 성능 향상을 달성했다.
- 128개의 Stampede2 노드에서 ResNet-1001에 대해 단일 노드 학습 대비 110배의 성능 향상을 기록하여 강한 약한 스케일링 성능을 입증했다.
- 512대의 Frontera 노드(28,762개 코어)에서 단일 노드 학습 대비 481배의 성능 향상을 기록하여 하이브리드 병렬 학습의 놀라운 강한 스케일링 성능을 입증했다.
- HyPar-Flow를 통한 모델 병렬 학습은 순차적 학습 대비 최대 3.2배, 데이터 병렬 학습 대비 1.6배의 성능 향상을 기록했다.
- 실험용 5,000층의 ResNet-5000 모델을 단 두 대의 노드에서 성공적으로 학습시켜, 이전 시스템에서 구현이 불가능한 모델을 처리할 수 있는 능력을 입증했다.
- 128단계의 파이프라인은 최적의 성능을 내는 것으로 밝혀졌으며, 계산과 통신의 오버랩을 통해 성능 향상이著명하게 향상되었다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.