피드로 돌아가기
Dev.toAI/ML
원문 읽기
ROCm 기반 Prefill/Decode 분리 설계를 통한 GPU 리소스 최적화
AMD ATOM + ATOMesh: Prefill/decode Disaggregation on ROCm
AI 요약
Context
LLM 추론의 Prefill 단계는 Compute-bound, Decode 단계는 Memory-bandwidth-bound라는 상이한 병목 지점을 가짐. 단일 GPU 풀에서 두 단계를 혼용할 경우 긴 프롬프트 처리가 토큰 생성을 지연시키며 하드웨어 자원 낭비를 초래하는 구조적 한계 존재.
Technical Solution
- Prefill과 Decode를 서로 다른 GPU Pool로 분리하여 각 단계의 병목 특성에 최적화한 Disaggregation 아키텍처 설계
- AITER 기반의 최적화 커널과 MORI를 통한 분산 통신 계층을 적용하여 ROCm 환경의 추론 성능 확보
- Prefill 완료 후 생성된 KV Cache를 Interconnect를 통해 Decode Pool로 전송하는 데이터 파이프라인 구축
- KV-aware Scheduling을 도입하여 KV Cache가 이미 존재하는 Worker로 요청을 라우팅하는 효율적 배치 전략 적용
- OpenAI 호환 API를 제공하는 ATOMesh 오케스트레이션 레이어를 통해 다중 엔진 백엔드 통합 관리
실천 포인트
1. 워크로드의 병목 지점이 Compute-bound인지 Memory-bound인지 분석하여 리소스 할당 전략 수립
2. 분산 환경에서 데이터 전송 비용(KV Cache Transfer)과 계산 효율성 사이의 Trade-off 검토
3. 상태 정보(KV Cache)의 위치를 고려한 KV-aware Scheduling 적용 가능성 평가
4. 하드웨어 가속기 전용 커널 최적화와 통신 라이브러리의 정합성 확인