[논문 리뷰] The Case for Task Sampling based Learning for Cluster Job Scheduling
이 논문은 클러스터 작업 스케줄링을 위한 태스크 샘플링 기반 학습 방법인 SLearn를 제안한다. SLearn는 작업의 피LOT 태스크를 실행하여 전체 작업의 실행 시간을 추정함으로써 런타임 예측 정확도를 향상시키며, 역사 기반 방법(예: 3Sigma) 대비 평균 작업 완료 시간을 1.28배에서 1.56배까지 단축시킨다. 이는 동적 워크로드와 비정상적인 작업 행동 조건에서도 성립한다.
The ability to accurately estimate job runtime properties allows a scheduler to effectively schedule jobs. State-of-the-art online cluster job schedulers use history-based learning, which uses past job execution information to estimate the runtime properties of newly arrived jobs. However, with fast-paced development in cluster technology (in both hardware and software) and changing user inputs, job runtime properties can change over time, which lead to inaccurate predictions. In this paper, we explore the potential and limitation of real-time learning of job runtime properties, by proactively sampling and scheduling a small fraction of the tasks of each job. Such a task-sampling-based approach exploits the similarity among runtime properties of the tasks of the same job and is inherently immune to changing job behavior. Our study focuses on two key questions in comparing task-sampling-based learning (learning in space) and history-based learning (learning in time): (1) Can learning in space be more accurate than learning in time? (2) If so, can delaying scheduling the remaining tasks of a job till the completion of sampled tasks be more than compensated by the improved accuracy and result in improved job performance? Our analytical and experimental analysis of 3 production traces with different skew and job distribution shows that learning in space can be substantially more accurate. Our simulation and testbed evaluation on Azure of the two learning approaches anchored in a generic job scheduler using 3 production cluster job traces shows that despite its online overhead, learning in space reduces the average Job Completion Time (JCT) by 1.28x, 1.56x, and 1.32x compared to the prior-art history-based predictor.
연구 동기 및 목표
- 비재현성 있는 작업과 변화하는 시스템 조건으로 인해 역사 기반 학습의 불안정성이 발생하는 문제를 해결하기 위해.
- 하드웨어, 소프트웨어 또는 사용자 스크립트 업데이트로 인해 작업 행동이 시간이 지남에 따라 변화할 경우 과거 작업 실행에 의존하는 데서 비롯하는 한계를 극복하기 위해.
- 공간 차원(태스크 샘플링을 통한 학습)에서의 학습이 시간 차원(역사 데이터를 통한 학습)에서의 학습보다 더 정확한 예측을 가능하게 하는지 탐색하기 위해.
- 태스크 샘플링으로 인한 오버헤드가 개선된 스케줄링 정확도와 단축된 작업 완료 시간로 인한 성능 향상으로 상쇄되는지 평가하기 위해.
- 샘플링 기반 학습 접근법을 DAG 워크로드에 확장하고, 역사 기반 예측기 대비 성능을 평가하기 위해.
제안 방법
- 들어오는 각 작업에서 소수의 태스크(피LOT 태스크)를 사전에 샘플링하여 나머지 태스크를 스케줄링하기 전에 완료되도록 실행한다.
- 피LOT 태스크의 관측된 실행 시간을 바탕으로 동일 작업 내 태스크 유사성을 활용하여 전체 작업의 총 실행 시간을 추정한다.
- 예측된 작업 실행 시간을 기반으로 우선순위를 정하는 알고리즘(예: 최단 작업 우선(SJF))을 사용하는 일반적인 작업 스케줄러에 SLearn 예측 모델을 통합한다.
- 예측 오차와 대기(보류 중인 작업으로 인한 지연)를 고려한 워크로드 인식 스케줄링 정책을 설계하여 작업 완료 시간을 최소화한다.
- Azure에서 실시간 테스트베드 실험과 시뮬레이션을 통해 SLearn를 구현하고 평가하였으며, 세 가지 생산 환경 트레이스를 사용: Google(2011, 2019)와 2Sigma.
- 각 작업 단계에서 대표 태스크를 샘플링하고 그 실행 시간을 기반으로 종단 간 작업 완료 시간을 예측함으로써 SLearn를 DAG 작업에 확장한다.
실험 결과
연구 질문
- RQ1공간 차원(태스크 샘플링을 통한 학습)에서의 학습이 시간 차원(역사 데이터를 통한 학습)에서의 학습보다 클러스터 작업 스케줄링에서 더 높은 예측 정확도를 달성할 수 있는가?
- RQ2예측 정확도 향상으로 인한 성능 향상이 비피LOT 태스크의 지연으로 인한 스케줄링 오버헤드를 상쇄하는가?
- RQ3다양한 워크로드 조건에서 예측 오차는 작업 저항과 완료 시간에 어떤 영향을 미치는가?
- RQ4다중 단계를 가진 DAG 구조 작업에 대해 태스크 샘플링 접근법을 효과적으로 확장할 수 있는가?
- RQ5SLearn가 3Sigma와 같은 최신 역사 기반 예측기보다 우수한 성능을 보이는 워크로드 조건는 어떤가?
주요 결과
- SLearn는 세 가지 생산 트레이스에서 3Sigma 대비 평균 작업 완료 시간(JCT)을 각각 1.28배, 1.56배, 1.32배 단축시키며 일관된 성능 향상을 보였다.
- SLearn의 예측 오차는 3Sigma보다 유의미하게 낮다: 양의 오차의 경우 P50 기준 30.65% 대비 898.5%, 음의 오차의 경우 P50 기준 -26.79% 대비 -37.0%.
- SLearn는 우선순위 큐에서 작업를 잘못 배치하는 비율이 2.85%에 불과하지만, 3Sigma의 경우 12.19%로 더 높다. 이는 더 높은 예측 정확도 덕분이다.
- 고용량 워크로드 기간(예: 600–620초 및 800–840초) 동안 SLearn는 낮은 예측 오차로 인해 저항이 적고 더 나은 스케줄링 결정을 내려 3Sigma 대비 성능 향상을 달성한다.
- SLearn 하에서 작업이 겪는 저항은 오라클(이상적) 저항 곡선을 정확히 따라가지만, 3Sigma는 큰 양의 예측 오차로 인해 저항이 급격히 증가하는 피크를 보인다.
- 저용량 워크로드 기간(예: 400–600초)에는 작업 보존 원칙에 따라 SLearn는 성능에 악영향을 주지 않으며, 비샘플링 태스크가 피LOT 태스크를 불필요하게 기다리지 않는다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.