본문으로 건너뛰기

GPU 할당 순서가 utilization을 바꾼 이유

Dharma-AI는 FIFO 대신 수요·제약·우선순위를 함께 계산해 GPU utilization과 우선순위 가중 출력을 높였다.

이 요약은 AI가 원문을 분석해 생성했습니다. 정확한 내용은 원문 기준으로 확인하세요.

TL;DR

Dharma-AI는 학습, 실시간 추론, 배치 추론, 양자화가 경쟁하는 GPU pool에서 FIFO 대신 전체 horizon의 수요와 제약, 우선순위를 함께 계산하는 allocator를 구축했습니다. 실시간 작업은 고정 최대치가 아니라 시점별 수요 곡선으로 배치하고, batch-like 작업은 연속 GPU 블록과 비중단 실행 조건을 지키면서 우선순위 순으로 배치해 유휴 예약 용량과 잘못된 도착 순서의 손실을 줄였습니다. 동일 하드웨어의 일곱 시나리오에서 priority-weighted value는 모두 증가했고, 학습 중심 8 GPU 사례에서는 utilization이 53.6%에서 87.0%, value가 8,553에서 17,545로 올랐으며 64 GPU·30 작업 테스트에서도 value가 15.9% 증가했습니다. NP-hard 문제의 실시간 처리는 1~2밀리초 또는 15밀리초 heuristic으로 수행하고, 24시간 계획은 현재 timestep만 확정한 뒤 30~60분마다 최신 예측으로 다시 계산해 예측 오차를 흡수합니다.

섹션별 상세

01
Dharma-AI는 같은 하드웨어와 동일한 작업을 FIFO 순서로 배치하는 대신, GPU·작업·시점별 할당을 전체 시간 구간에서 함께 결정하는 constraint-aware allocator를 구축했습니다. 학습·배치 추론·양자화는 중단 없이 연속된 GPU 블록을 필요로 하고 실시간 추론은 시점별 수요에 따라 GPU 수가 변하므로, 두 형태를 한 자원 풀에서 조정하는 일이 핵심입니다. 일곱 가지 시나리오에서 utilization은 한 사례를 제외하고 모두 개선됐고, priority-weighted value는 전 사례에서 증가해 할당 순서가 고정 자원의 실제 산출을 좌우한다는 결과로 이어졌습니다.
학습·실시간 추론·배치 작업·양자화가 GPU management를 거쳐 공유 GPU pool로 연결되는 구조도입니다.
Diagram네 가지 workload가 GPU management 계층으로 들어가고, 이 계층이 무엇을 언제 어느 GPU에서 실행할지 결정한 뒤 서로 다른 GPU 유형과 모델이 포함된 유한한 GPU pool에 할당합니다. 기사에서 다루는 allocator가 여러 작업 형태와 제한된 자원을 하나의 계획으로 조정하는 구조를 시각적으로 나타냅니다.
02
FIFO의 고정 예약 방식은 실시간 추론의 하루 최대 수요를 하루 종일 확보해 두기 때문에, 수요가 낮은 시간의 GPU를 배치 작업에 돌려주지 못합니다. 예를 들어 한 애플리케이션이 정오에 6개, 오전 4시에 2개의 GPU만 필요해도 최대치인 6개가 24시간 예약되며, 이 구조가 혼합 제어 시나리오의 utilization 51.6%와 학습 중심 시나리오의 53.6%로 이어졌습니다. 여기에 도착 순서만 따르는 배치가 겹치면 후속 작업이 요구하는 연속 GPU 블록을 확보하지 못해, 사용되지 않은 GPU 시간이 남고 우선순위가 높은 작업도 대기하게 됩니다.
03
allocator는 실시간 추론을 고정 상한이 아니라 매 시점의 수요 곡선으로 처리하고, 수요가 낮은 구간에 batch-like 작업을 배치한 뒤 다음 피크에 회수할 수 있도록 GPU 교체량을 제한합니다. 동시에 batch-like 작업은 도착 순서가 아니라 전체 horizon의 priority에 따라 배치되며, 이미 실행 중인 작업은 다음 계획에서도 상속되고 고정됩니다. 그 결과 8 GPU·16 작업의 학습 중심 시나리오에서 utilization이 53.6%에서 87.0%로, priority-weighted value가 8,553에서 17,545로 올라갔습니다.
Optimizer와 Baseline(FIFO)의 GPU별 시간 배치를 나란히 비교한 할당 그래프입니다.
Chart상단 Optimizer는 8개 GPU에 RTO·RT1·Tr 계열 작업을 시간대별로 재배치하며 GPU utilization 87.0%와 objective 17,545를 기록합니다. 하단 Baseline(FIFO)은 일부 GPU가 긴 작업이나 고정 예약에 묶여 utilization 53.6%와 objective 8,553에 머물고, 미예약 GPU-hour도 131시간으로 더 크게 나타납니다.
04
utilization은 GPU 시간 중 무언가에 할당된 비율만 측정하므로 작업의 중요도까지 평가하지 못합니다. 64 GPU·30 작업 규모 테스트에서는 FIFO와 allocator가 모두 utilization 44.9%를 기록하고 30개 중 27개 작업을 완료했지만, allocator의 priority-weighted value는 51,248로 FIFO의 44,233보다 15.9% 높았습니다. 따라서 같은 점유율과 처리 작업 수를 유지하면서도 우선순위가 반영된 출력량을 늘리려면 점유율과 가치 지표를 분리해야 합니다.
05
법적 할당을 구성하는 조건은 GPU당 시점별 최대 한 작업, 작업별 수요 범위 준수, 실행 중 작업의 유지, batch-like 작업의 power-of-two 연속 GPU 블록, 실시간 작업의 시점 간 GPU 교체량 제한, 시작 작업의 비중단 실행으로 정리됩니다. 목적 함수는 batch-like 작업에 priority와 time-decay weight를 곱한 보상을 주고, 실시간 수요 미달에는 부족분에 비례한 penalty를 부과하는 두 항으로 구성됩니다. 실시간 penalty weight를 allocation weight의 5~10배로 두면 별도의 autoscaler가 고정 예약을 강제하지 않아도 실시간 지연 위험이 batch 작업의 보상보다 훨씬 비싸게 평가됩니다.
06
NP-hard인 조합 할당 문제를 모든 요청마다 formal model로 풀기에는 API 요청 사이의 지연 예산이 짧기 때문에, 시스템은 formal model의 구조적 제약을 내장한 heuristic을 hot path에 배치했습니다. heuristic은 대기 중인 모든 작업을 먼저 보고 남은 GPU를 이후 작업이 실제로 점유할 수 있는 형태로 보존한 뒤, 우선순위에 따라 연속 블록을 할당합니다. 다섯 가지 contention 시나리오에서는 1~2밀리초, 64 GPU·30 작업 테스트에서는 15밀리초에 결과를 반환하며, Fast mode는 즉시 grid를 내놓고 Full mode는 이를 초기해로 삼아 주기적으로 개선합니다.
07
allocator의 성능은 작업별 GPU 시간과 실시간 트래픽 수요를 얼마나 정확히 예측하는지에 의존하므로, 네 작업 유형에 하나의 일반 추정기를 적용하지 않습니다. 학습 예측기는 22개 feature와 10개 구체적 training variant를 사용하고, LoRA·SFT·DPO·RLHF·RLVR·CPT처럼 parameter update 방식과 학습 절차가 다른 경우를 구분합니다. 양자화는 parameter count와 bitsandbytes·AWQ·GPTQ 알고리즘별 calibration tier로 예측하고, 실시간 추론은 시간별 트래픽 이력으로 매주 수요 곡선을 재보정해 peak reservation을 대체합니다.
08
시스템은 24시간 horizon을 최적화하지만 현재 timestep만 확정하고 30~60분마다 최신 데이터로 다시 실행합니다. 오전 9시에 만든 10시 이후의 일정은 현재 결정을 미래 정보와 함께 평가하기 위한 계획일 뿐이며, 실제 10시 할당은 10시의 실행 결과와 새 예측으로 다시 정해집니다. 실행 중 작업을 고정한 채 계획을 갱신하므로 예측 오차가 누적되지 않고, horizon 계획 자체도 향후 실시간 커버리지 위험과 유휴 구간을 미리 드러냅니다.

용어 해설

GPU 스케줄링(GPU Scheduling)
여러 작업이 제한된 GPU 자원을 사용할 수 있도록 작업별 실행 시점과 GPU 배치를 결정하는 방식입니다. 이 글에서는 학습·실시간 추론·배치 추론·양자화 작업의 수요, 우선순위, 연속 실행 조건을 함께 고려해 전체 시간 구간의 할당표를 구성하는 문제를 뜻합니다.
FIFO 스케줄러(FIFO Scheduler)
먼저 도착한 작업을 먼저 배치하는 스케줄러입니다. 작업의 우선순위나 이후 작업의 GPU 형태를 고려하지 않으므로, 실시간 추론의 최대 수요를 고정 예약하거나 뒤늦게 도착한 작업이 필요한 연속 GPU 블록을 확보하지 못하는 문제가 생길 수 있습니다.
우선순위 가중 가치(Priority-Weighted Value)
작업의 우선순위와 시간별 가중치를 반영해 GPU 할당의 산출 가치를 계산하는 지표입니다. 단순 GPU 점유율과 달리 어떤 작업을 얼마나 중요한 순서로 완료했는지 반영하므로, 같은 utilization과 완료 작업 수에서도 결과의 차이를 측정할 수 있습니다.
조합 최적화(Combinatorial Optimization)
GPU·작업·시점의 조합마다 할당 여부를 결정해 전체 일정의 최적해를 찾는 최적화 문제입니다. 이 글의 할당 문제는 NP-hard이므로, 빠른 요청 처리를 위해 구조적 제약을 내장한 heuristic을 실시간 경로에 사용하고 formal model은 주기적 개선에 활용합니다.
양자화(Quantization)
모델의 수치 표현을 더 낮은 정밀도로 바꿔 추론 자원이나 메모리 사용량을 줄이는 처리입니다. 이 글에서는 양자화를 수 시간의 GPU 자원을 점유할 수 있는 독립적인 스케줄링 작업으로 보고, bitsandbytes·AWQ·GPTQ와 모델 parameter count별 예측을 별도로 적용합니다.

기술

  • GPU
  • FIFO
  • LoRA
  • SFT
  • DPO
  • RLHF
  • RLVR
  • CPT
  • bitsandbytes
  • AWQ
  • GPTQ

활용 사례

  • 학습·실시간 추론·배치 추론·양자화 작업이 경쟁하는 enterprise AI GPU cluster
  • 실시간 트래픽 변화에 따라 GPU를 회수하고 재할당하는 inference infrastructure
  • 작업 우선순위를 반영한 multi-tenant GPU scheduling
  • GPU 수요 예측과 24시간 horizon 기반 capacity planning
AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 08. 18.수집 2026. 08. 18.출처 타입 RSS

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.