The explosive popularity of deep learning (DL) has led to the evolution of deep learning frameworks. Unfortunately, despite the need for running multiple deep learning jobs on a GPU shared cluster environment, current cloud schedulers are often insufficient to schedule them efficiently. Managing resources for deep learning models without enough information or expertise results in poor performance in scalability and adversely affects the overall cluster performance.
In this paper, we present Max-Speedup, a job scheduling policy of multi-tenant deep learning jobs on a shared GPU cluster. We address two main challenges, 1) precise estimation of training throughput to analyse resource-performance trade-off of a deep learning model and 2) efficient scheduling policy for multi-tenant deep learning jobs on a shared GPU cluster. We tackle these problems by estimating the finish time of parameter synchronization and maximizinig aggregate speedup by exploiting performance-resource trade-offs of DL jobs. Our evaluation shows that Max-Speedup improves the average job completion time by 3x over SRTF while it reduces makespan by up to 26.9x.
딥 러닝의 폭발적인 인기로 인하여 딥 러닝 프레임워크 또한 많이 발전했다. 하지만 GPU 공유 클러스터 환경에서 딥 러닝 작업을 실행하려는 요구가 있음에도 불구하고, 현재의 클라우드 스케줄러로는 이러한 작업들을 효율적으로 관리하지 못한다. 딥 러닝 모델에 대해 전문적인 지식이 없는 상태에서 자원을 관리할 경우, 각 모델의 확장성이 떨어지게 되고 결국 클러스터의 전반적인 성능에 악영향을 미친다.
본 논문에서는 GPU 공유 클러스터 환경에서의 멀티 테넌트 딥 러닝 작업의 스케줄링 정책인 Max-Speedup을 제시한다. 이를 위해 본 연구에서는 두 가지 문제점을 해결하고자 한다. 첫 번째로 딥 러닝 모델의 자원과 학습 처리성능간의 상관관계를 분석하기 위해 딥 러닝 작업의 학습 처리성능에 대한 정확한 예측이 필요하다. 두 번째로 GPU 공유 클러스터에서 딥 러닝 작업을 효율적으로 스케줄링하기 위한 정책이 필요하다. 본 논문에서는 딥 러닝 작업의 파라미터 동기화 시간을 예측하여 해당 작업의 처리성능 예측에 대한 정확성을 높였고, 이러한 자원과 학습 처리성능간의 상관관계를 활용한 스케줄링 정책을 제시하여 클러스터의 총 처리성능을 향상시켰다. 본 논문에서는 실험을 통하여 Max-Speedup이 SRTF에 비해 평균 작업 종료 시간과 최대 작업 종료 시간을 각각 3배, 26.9배 빠름을 보여주었다.