쿠버네티스(Kubernetes) 플랫폼에서 AI 워크로드를 관리하는 기술 팀은 GPU 클러스터가 가득 차고 배치 작업(Batch-jobs) 대기열이 늘어남에 따라 지속적인 압박에 직면합니다. GPU 인프라를 확장하는 것이 가장 빠른 선택인 경우가 많지만, 대기열의 증가는 타이밍, 모델 서빙 용량, 또는 다양한 하드웨어와 모델 간의 선택 효율성 부족을 반영하는 것일 수 있습니다. 더 많은 리소스를 구매하고 제공하기로 결정하기 전에, 팀은 성공 지표, 마감 기한, 그리고 결과를 도출하는 데 드는 실제 비용을 정의해야 합니다.
사용률과 실제 처리량 간의 구분
도전 과제는 단순히 리소스를 실행하는 것에 그치지 않습니다. 할당된 GPU, 사용 중인 GPU, 가치 있는 결과를 생성하는 작업 단위는 완전히 다른 개념입니다. 이러한 상태 간의 관계를 이해하면 팀이 현재 용량을 보다 효과적으로 활용할 수 있습니다.
- 마감 기한 정의: 챗봇과 같은 일부 서비스는 24/7 지속적인 응답 서비스를 요구하는 반면, 모델 평가 작업은 특정 내부 출시 일정과 연계됩니다.
- 품질 목표: 모든 추론 서비스는 명확한 품질 임계값과 응답 시간 목표를 가져야 합니다. 단지 완료된 응답을 얻는 것이 고객이 요구하는 목표를 반드시 달성했음을 의미하지는 않기 때문입니다.
피크 수요 감소를 위한 유연한 스케줄링 활용
스케줄링의 유연성은 인프라를 즉시 확장하지 않고도 제약 사항을 완화하는 데 도움이 됩니다. 예를 들어 특정 기간 동안 배치 작업을 위해 4개의 GPU를 사용할 수 있고 각각 2개의 GPU를 요구하는 작업이 4개 있는 경우, 이를 한 번에 실행하면 8개의 GPU가 필요합니다. 반면 일정을 교차하여 먼저 두 작업을 스케줄링한 다음 나머지 두 작업을 스케줄링하면 동일한 사용 가능한 리소스를 사용하여 지정된 마감 기한 내에 모든 작업을 완료할 수 있습니다.
팀은 쿠(Kueue)와 같은 도구를 활용하여 수락 제어 지점과 정책을 제공할 수 있습니다. 단, 작업을 조기에 시작했다가 나중에 중단해야 하는 상황을 방지하기 위해 마감 기한과 요구 사항을 정확하게 정의하고 반영해야 합니다.
지속 가능한 서비스 용량 측정 및 성능 테스트
GPU 활동의 증가가 사용 가능한 추가 처리량을 그대로 반영하는 것은 아닙니다. 따라서 지속 가능한 용량을 측정하려면 하드웨어 및 서비스 설정을 고정한 상태에서 요청 비율을 변경하는 대표적인 부하 테스트를 수행하여 품질 요구 사항과 허용 가능한 지연 시간을 유지하는 최고 지속 가능 비율에 도달해야 합니다.
또한 오픈코스트(OpenCost)와 같은 도구에서 도출된 비용 데이터를 실제 결과 및 서비스와 연계하여 달성되고 검증된 결과당 비용을 산출함으로써, 비용과 효율성 간의 필요한 균형을 이루는 운영 모델에 도달해야 합니다.
이러한 접근 방식은 실무적으로 무엇을 바꿉니까?
팀의 초점이 단순히 하드웨어 소비율을 추적하는 것에서 실제 비즈니스 결과와 연계된 지출 효율성을 평가하는 것으로 전환됩니다. 이러한 전환은 추가 하드웨어에 대한 불필요한 자본 투자를 방지하고, 더 많은 리소스를 요청하기 전에 모델 효율성과 스케줄링 설정을 최적화하도록 유도합니다.
뉴스 출처
The New Stack - Software Development
원문 보기 ↗