[논문 리뷰] MXNET-MPI: Embedding MPI parallelism in Parameter Server Task Model for scaling Deep Learning
이 논문은 파라미터 서버(PS) 작업 모델에 MPI 병렬 처리를 통합하여 확장 가능한 딥러닝 훈련을 가능하게 하는 하이브리드 프레임워크 MXNET-MPI를 제안한다. MXNet의 계산 그래프 내부에 MPI 집합 연산—특히 텐서 집합 연산—을 통합함으로써 네트워크 경쟁과 파라미터 노후화를 줄이며, 에포크당 훈련 속도를 6배 빠르게 하고 ResNet-50를 사용해 ImageNet의 상위-1 정확도 0.72 이상을 달성하여 순수 PS 및 MPI 접근 방식을 모두 능가한다.
Existing Deep Learning frameworks exclusively use either Parameter Server(PS) approach or MPI parallelism. In this paper, we discuss the drawbacks of such approaches and propose a generic framework supporting both PS and MPI programming paradigms, co-existing at the same time. The key advantage of the new model is to embed the scaling benefits of MPI parallelism into the loosely coupled PS task model. Apart from providing a practical usage model of MPI in cloud, such framework allows for novel communication avoiding algorithms that do parameter averaging in Stochastic Gradient Descent(SGD) approaches. We show how MPI and PS models can synergestically apply algorithms such as Elastic SGD to improve the rate of convergence against existing approaches. These new algorithms directly help scaling SGD clusterwide. Further, we also optimize the critical component of the framework, namely global aggregation or allreduce using a novel concept of tensor collectives. These treat a group of vectors on a node as a single object allowing for the existing single vector algorithms to be directly applicable. We back our claims with sufficient emperical evidence using large scale ImageNet 1K data. Our framework is built upon MXNET but the design is generic and can be adapted to other popular DL infrastructures.
연구 동기 및 목표
- 순수한 파라미터 서버(PS) 및 MPI 기반 딥러닝 프레임워크의 확장성 한계를 해결하기 위해 네트워크 핫스팟, 파라미터 노후화 또는 낮은 장애 복구 능력 문제를 해결한다.
- 단일 프레임워크 내에서 MPI와 PS 패러다임의 원활한 공존을 가능하게 하여 PS의 유연성과 MPI의 성능 사이에서 유연한 튜닝을 허용한다.
- 분산 SGD에서 수렴 속도를 향상시키기 위해 통신을 최소화하는 새로운 알고리즘—예를 들어 MPI Elastic SGD—를 설계하고 구현한다.
- 텐서 집합 연산을 통해 GPU당 다수의 벡터를 하나의 객체로 간주함으로써 전역 집계를 최적화하고 대역폭 활용도를 높이며 지연 시간을 감소시킨다.
- 실제 HPC 및 클라우드 클러스터를 사용하여 대규모 ImageNet 1K 훈련에서 최신 기술 수준의 성능을 입증한다.
제안 방법
- MPI 집합 프리미티브—특히 allreduce 및 broadcast—을 MXNet의 계산 그래프에 통합하기 위해 파라미터 서버와 인터페이스를 맺는 독립적인 MPI_COMM_WORLD 작업 클라이언트를 생성한다.
- MPI 클라이언트 수를 조절할 수 있는 하이브리드 모델을 도입하여 순수 PS에서 순수 MPI로의 부드러운 전환을 가능하게 하며, 장애 복구 능력과 성능 사이의 균형을 이루는 중간 설정을 제공한다.
- MPI 커뮤니케이터 내에서 동기 업데이트와 외부에서 비동기 지연 업데이트를 결합한 새로운 MPI Elastic SGD 알고리즘을 설계하여 노후화를 줄이고 수렴 속도를 향상시킨다.
- GPU의 파라미터 벡터 집합을 하나의 텐서 객체로 간주하는 텐서 집합 연산을 구현하여 기존의 단일 벡터 알고리즘을 효율적으로 재사용할 수 있도록 한다.
- GPU 가속 커널(IBMGpu)을 사용한 전역 감소 최적화를 수행하고 NCCL와 비교하며, 린 기반 및 호스트 메모리 기반 감소 전략을 통해 최고의 대역폭을 확보한다.
- 고속 인터커넥트(예: NVLink)와 다중 스레드 CUDA 커널(112개 스레드 블록)을 활용하여 감소 및 브로드캐스트 대역폭을 최대화하고, allreduce에 대해 최대 30 GB/sec의 성능을 달성한다.
실험 결과
연구 질문
- RQ1MPI와 파라미터 서버 모델을 단일 딥러닝 프레임워크 내에 함께 위치시켜 성능과 장애 복구 능력의 각각의 강점을 결합할 수 있는가?
- RQ2작업 기반의 PS 프레임워크인 MXNet에 효율적으로 MPI 집합 연산을 통합할 수 있는가? 이 과정에서 프로그래밍 모델이 손상되지 않도록 하는가?
- RQ3MPI와 결합된 새로운 통신 회피 알고리즘—예를 들어 Elastic SGD—이 대규모 분산 SGD에서 수렴 속도를 크게 향상시킬 수 있는가?
- RQ4GPU당 다수의 벡터를 하나의 텐서로 간주하는 텐서 집합 연산은 대규모 allreduce 연산에서 대역폭 향상과 지연 감소에 얼마나 기여하는가?
- RQ5하이브리드 MPI-PS 모델은 확장성과 장애 복구 능력을 유지하면서 ImageNet 1K에서 최신 기술 수준의 훈련 성능을 달성할 수 있는가?
주요 결과
- 하이브리드 MXNET-MPI 프레임워크는 ImageNet 1K에서 기본 PS 접근 방식 대비 에포크당 훈련 시간을 6배 감소시키며 수렴 속도도 향상시켰다.
- MPI Elastic SGD를 사용함으로써, 통신 빈도를 줄였음에도 불구하고 주요 병렬 SGD 접근 방식보다 수렴 속도를 2배 이상 향상시켰다.
- 텐서 집합 기반 allreduce 구현은 IBMGpu 커널을 사용해 최대 30 GB/sec의 대역폭을 달성했으며, NCCL(15 GB/sec)와 바이두의 린 구현보다 6배 빠르게 작동했다. 이는 Minsky 클러스터에서의 결과이다.
- ResNet-50를 사용하여 전체 ImageNet 1K 데이터셋에서 검증 정확도가 0.72를 초과하는 성능을 달성했으며, 이는 발표 당시 최신 기술 수준의 성능였다.
- 클라이언트 수가 두 개인 최적화된 MPI-ESGD 구성은 12명의 워커를 사용하는 dist-ESGD를 능가했으며, 클라이언트 수를 줄임으로써 파라미터 노후화가 감소하고 수렴 속도가 향상됨을 보여주었다.
- 프레임워크의 설계는 Python 기반 딥러닝 워크플로우에 MPI를 원활하게 통합할 수 있도록 하여 저수준 MPI 복잡성을 추상화하면서도 LSF 작업 재시작 기능을 통해 고성능과 장애 복구 능력을 동시에 확보한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.