AI Briefing

vLLM 라우팅과 KV (16분 읽기)

·2026.05.04 09:00

핵심 내용

혼합 트래픽에서는 클래스 인지 vLLM 라우팅이 가장 좋은 균형을 보였다.

자세히 보기

FCK가 생성한 혼합 생산 트래픽으로 vLLM V1, SGLang, llama.cpp, TGI를 같은 OpenAI-compatible 인터페이스 아래 비교했다. 서빙 스윕은 균형 풀, 대형 토큰 풀, 소형 인터랙티브 풀, prefix-cache routing, slow-client isolation, class-aware routing을 시험했다.

요청군은 6개였다.

  • interactive chat
  • 반복 프리픽스를 쓰는 RAG
  • long-prefill 요청
  • agent tool loops
  • batch summarization
  • slow streaming clients

가장 좋은 프로필은 vllm-v1/class-aware-router였다. 첫 토큰 지연(TTFT), 토큰 간격(ITL), 느린 스트리밍 클라이언트 격리, 유용 처리량의 균형이 가장 좋았고, 단일 글로벌 vLLM 풀보다 mixed traffic에 훨씬 적합했다.

운영 기준은 단순했다.

  • 인터랙티브 트래픽은 더 작은 max_num_batched_tokens와 적당한 max_num_seqs로 묶는다.
  • 긴 컨텍스트와 배치 작업은 더 큰 토큰 예산의 별도 풀로 분리한다.
  • chunked prefill에서는 max_long_partial_prefills를 max_num_partial_prefills보다 낮게 둔다.
  • max_num_batched_tokens, max_num_seqs, partial-prefill 제한, stream interval은 워크로드 제어값으로 본다.

스케일을 키운 실험에서는 단일 공유 풀이 TTFT/ITL 게이트를 통과하지 못했지만, class-aware routing은 거의 모든 요청을 받아냈다. prefix-cache-only와 slow-client-only 프로필은 각 구간에는 도움이 됐으나 전체 시스템 해법은 아니었다.

소스 빌드에서는 Debian이 더 큰 rootfs를 필요로 했고 GCC 버전 게이트에 막혔다. Fedora 44에서는 GCC 16, Python 3.14, VLLM_TARGET_DEVICE=cpu, MAX_JOBS=4, numactl-devel 조합으로 확장 모듈을 성공적으로 빌드했으며, 런타임 성능을 위해 tcmalloc 설치가 권장됐다.

Hybrid KV 랩은 PagedAttention 재작성 경로를 검증했다. 블록 소유권, prefix sharing, refcounts, partial blocks, eviction, copy-on-write를 유지하면서 긴 per-token block table 대신 compact logical span을 노출했다. 정확성 오라클은 odd lengths, MQA/GQA, ALiBI, sliding windows, prefix reuse, copy-on-write, partial final blocks, FP8-style scaling을 대조했고, 첫 실행에서 30/30을 통과해 virtual-contiguous와 hybrid-prefix-shared를 하드웨어 프로파일링 우선 후보로 골랐다.

이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.

AI 처리 방식을 확인하거나, 요약 오류와 출처 표기 문제, 삭제 요청을 문의 · 건의로 알려주세요.