[논문 리뷰] Semi-Dynamic Load Balancing: Efficient Distributed Learning in Non-Dedicated Environments
이 논문은 실시간 워커 성능 기반으로 반복 경계에서 샘플 배치 크기를 조정하여 분산 기계 학습에서 느린 완료자(straggler) 문제를 줄이는 반동적 로드 밸런싱 프레임워크 LB-BSP를 제안한다. CPU 클러스터에서는 NARX 기반 예측을, GPU 클러스터에서는 적응형 배치 크기 조정을 통해 최대 54% 빠른 훈련을 달성하며, 전용 환경이 아닌 환경에서도 효율적이고 비침습적인 로드 밸런싱을 가능하게 한다.
Machine learning (ML) models are increasingly trained in clusters with non-dedicated workers possessing heterogeneous resources. In such scenarios, model training efficiency can be negatively affected by stragglers -- workers that run much slower than others. Efficient model training requires eliminating such stragglers, yet for modern ML workloads, existing load balancing strategies are inefficient and even infeasible. In this paper, we propose a novel strategy called semi-dynamic load balancing to eliminate stragglers of distributed ML workloads. The key insight is that ML workers shall be load-balanced at iteration boundaries, being non-intrusive to intra-iteration execution. We develop LB-BSP based on such an insight, which is an integrated worker coordination mechanism that adapts workers' load to their instantaneous processing capabilities by right-sizing the sample batches at the synchronization barriers. We have custom-designed the batch sizing algorithm respectively for CPU and GPU clusters based on their own characteristics. LB-BSP has been implemented as a Python module for ML frameworks like TensorFlow and PyTorch. Our EC2 deployment confirms that LB-BSP is practical, effective and light-weight, and is able to accelerating distributed training by up to $54\%$.
연구 동기 및 목표
- 자원 가용성이 변동하는 비전용, 이종 클러스터에서 반복적이고 텐서 기반 기계 학습 워크로드에서 느린 완료자 문제를 해결하기 위해.
- 반복적이고 텐서 기반 기계 학습 워크로드에서 정적 및 동적 로드 밸런싱의 비효율성을 피할 수 있는 로드 밸런싱 전략을 설계하기 위해.
- 반복 경계에서만 조정을 수행함으로써 내부 반복 실행 효율성을 유지하면서도 효율적이고 비침습적인 로드 밸런싱을 가능하게 하기 위해.
- 실시간 처리 능력 예측 기반으로 CPU 및 GPU 클러스터에 맞는 플랫폼 전용 배치 크기 조정 전략을 개발하기 위해.
- Amazon EC2와 같은 실제 클라우드 환경에서 LB-BSP의 실용성, 효과성 및 낮은 오버헤드를 평가하기 위해.
제안 방법
- LB-BSP는 동기화 장벽에서 로드 밸런싱을 수행하는 버스트 싱크론스 파라렐(구조) 모델에 통합되어, 각 워커의 처리 시간을 균형 잡기 위해 배치 크기를 조정한다.
- CPU 클러스터의 경우, 실시간 CPU 및 메모리 자원 메트릭을 사용해 워커 처리 속도를 예측하는 NARX 순환 신경망을 사용한다.
- 반복 시작 시 예측된 처리 능력에 기반해 각 워커의 배치 크기를 동적으로 설정하여 워커 간 워크로드를 균형 잡는다.
- GPU 클러스터의 경우, GPU 메모리 및 계산 처리 능력의 특성을 고려해 별도의 배치 크기 조정 알고리즘을 설계한다.
- 실행 오버헤드를 최소화하기 위해 배치 크기 관리자와 워커 간에 비차단 RPC 통신을 사용한다.
- 성능 모니터링은 실행 로그(예: TensorFlow Timeline 객체)를 통해 수행되며, 훈련 스루풋에 미치는 영향이 최소화된다.
실험 결과
연구 질문
- RQ1내부 반복 실행을 방해하지 않으면서 분산 기계 학습 훈련에서 효율적인 로드 밸런싱을 수행하는 방법은 무엇인가?
- RQ2변동성이 큰 비전용 환경에서 워커 처리 능력을 예측하는 데 가장 효과적인 방법은 무엇인가?
- RQ3배치 크기 조정 기반 반동적 로드 밸런싱이 기계 학습 워크로드에서 기존 정적 및 동적 로드 밸런싱보다 뛰어나게 성능을 높일 수 있는가?
- RQ4LB-BSP는 CPU 및 GPU 클러스터에서 훈련 속도 향상과 시스템 오버헤드 측면에서 어떻게 성능을 발휘하는가?
- RQ5이종적이고 공유되는 환경에서 예측 정확도가 전체 훈련 효율성에 미치는 영향은 무엇인가?
주요 결과
- LB-BSP는 비전용 클러스터에서 느린 완료자를 효과적으로 제거함으로써 Amazon EC2 배포에서 최대 54% 빠른 분산 훈련을 달성한다.
- NARX 기반 예측 모델은 EMA 및 ARIMA와 같은 기준 방법 대비 RMSE를 40% 감소시켜 더 정확한 배치 크기 설정을 가능하게 한다.
- 96명의 워커가 포함된 클러스터에서도 LB-BSP의 시스템 오버헤드는 총 반복 시간의 1.1% 미만으로 유지되어 경량성임을 확인한다.
- 프레임워크는 CPU 및 GPU 클러스터 모두에서 높은 성능을 유지하며, 각 플랫폼에 맞는 맞춤형 배치 크기 조정 전략을 제공한다.
- NARX가 일시적인 피크를 억제하면서도 결정론적 성능 향상을 정확히 추적할 수 있음을 통해 예측의 강건성이 입증된다.
- LB-BSP는 작업 도난 및 런타임 이동과 같은 기존 로드 밸런싱 접근 방식을 피하므로 텐서 기반 처리와 호환되지 않는 문제를 해결한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.