PFN, AI 계산 효율 극대화하는 초고효율 스케줄러 개발
- •PFN이 AI 학습 실행 효율을 최적화하는 커스텀 Kubernetes 스케줄러 PoC를 공개함
- •마감 기한을 고려한 Least Slack Time 알고리즘으로 작업 준수율을 대폭 향상함
- •수주 분량의 학습 시나리오를 가상 시간으로 고속 검증하는 전용 평가 도구 개발
Preferred Networks(PFN)가 AI 계산 기반의 효율을 극한으로 끌어올리기 위한 Kubernetes 커스텀 스케줄러와 그 평가 도구의 개발 성과를 공개했다. AI 모델 학습에는 방대한 계산 리소스와 시간이 필요하지만, 기존의 표준 스케줄러로는 다수의 작업이 혼재된 복잡한 환경에서 개별 우선순위나 완료 기한을 최적으로 처리하는 데 한계가 있었다. 이에 PFN은 소프트웨어 측면에서 AI 계산 기반과 협력하여 리소스 스케줄링을 최적화하는 새로운 접근 방식을 제안했다.
이번에 개발된 스케줄러의 핵심은 Least Slack Time(LST) 알고리즘이다. 이는 각 작업의 예상 실행 시간과 마감 기한을 바탕으로 '여유 시간(Slack time)'을 산출하고, 유예가 적은 작업을 우선적으로 실행하는 메커니즘이다. 이러한 방식을 통해 표준 스케줄러에서는 대기 상태로 마감 기한을 넘기기 일쑤였던 소규모 후속 작업들도 Preemption 기능을 활용해 기한 내에 완료할 수 있게 되었다. 무엇보다 마감 기한이라는 정량적 지표를 활용함으로써 주관적인 우선순위 설정에 의존하지 않는 효율적인 운영을 실현했다.
또한 분산 학습에 필수적인 Gang Scheduling과 액셀러레이터의 단편화를 방지하는 독자적인 Bin Packing 기능이 구현됐다. 특히 노드 내 고장 등으로 사용 가능한 칩 수가 달라지는 상황에서도 리소스 단편화를 최소화하도록 설계되어, 하드웨어의 불확실성이 높은 대규모 환경에서도 높은 가동률을 유지할 수 있다. 그 결과 리소스 사용 효율을 최상으로 유지하며 대규모 AI 모델을 학습시키는 것이 가능해졌다.
한편 실무 운영의 큰 장벽인 평가 기간 문제를 해결하기 위해 'kube-scheduler-evaluator'라는 평가 도구도 함께 개발되었다. 이 도구는 실제 물리 리소스를 소비하지 않고 내부 가상 시간을 가속함으로써, 수주에 걸친 작업 실행 시나리오를 단 몇 분 만에 시뮬레이션한다. Go 언어를 통한 유연한 시나리오 정의를 지원하며 오픈소스로 공개되어 향후 AI 인프라 개발의 민주화와 기술 발전 가속화에 크게 기여할 것으로 기대된다.