동시성이 왕이다 — vLLM을 돌리는 사람들의 점수와 잔고
동시성이 왕이다 — vLLM을 돌리는 사람들의 점수와 잔고
r/Vllm의 짧은 확인 글 하나가 vLLM의 본질을 말한다. "Qwen3.5 9B FP8로 단일 요청 약 50 t/s. 원래 vLLM이 llama.cpp보다 빠르다고理解했는데, 확실히 아니다."
답글: "미친 게 아니다. vLLM은 동시 요청에 빠르다. 단일 요청에서는 거의 항상 llama.cpp보다 느리다."
반대쪽의 실측도 있다. "B200 8장 노드에서 Qwen 3.5 27B FP8: 95,317 tok/s. 12 노드: 1.1M tok/s. 커스텀 커널 없음."
이 글은 vLLM을 동시 서빙 엔진으로만 평가하고, 그 안에서의 점수와 잔고를 정리한다.
1. 무엇이 점수인가
동시성. paged attention·배치 서빙이 설계의 핵심이다. 위 B200 실측이 보여주듯, 노드 규모로 갈수록 토큰 처리량이 선형에 가깝게 커진다.
실측 플래그. 커뮤니티가 공유한 최적화 조합: --data--parallel-size 8(TP 대신 DP로 22K→75K), --num-speculative-tokens 1+ngram, --kv-cache-dtype fp8_e4m3(959K vs 288K 토큰/엔진), --enable-chunked-prefill, --enable-prefix-caching.
프로덕션 엔드포인트. RTX 6000 Ada 한 장에서 Qwen3.6-27B FP8: "빠른 TTFT, 피크 668 tok/s." --tool-call-parser qwen3_coder·--reasoning-parser qwen3로 툴·추론 파싱까지 담는 형태.
2. 무엇이 잔고인가
단일 요청의 체감. 위 "느리다" 체험. 개인 사용자·로컬 대화의 기본값이 llama.cpp·Ollama인 이유다. vLLM의 승리는 대기열의 승리다.
공유 메모리 장애. "vLLM 0.25.1은 잘 돌아가지만 상시 깨진다. Sometimes 10 hours fine, sometimes 1~2 hours." shm_broadcast.py:705 No available shared memory broadcast block found. 사용자의 해결책: "재시작 프로세스를 걸어 두었다. 이건 프로페셔널하지 않다."
하드웨어·양자화 매핑. Threadripper·RTX 4000 Ada 조합에서 "2일 동안 트러블슈팅. nvidia/Qwen3.6-35b-a10b-nvfp4만 올라간다. 다른 FP8 모델은 shm 부족으로 컨테이너가 꺼진다." SWAP 8GB 고갈 흔적까지 기록된다.
OOM의 여백. 위 B200 실패 사례: gpu-memory-utilization 0.95에서 MTP 드래프트+베이스+KV+CUDA graphs가 OOM, 908개 요청 실패. 0.90이면 성공.
추론적 정확도. FP8 KV 캐시는 "known accuracy issue"라는 주석과 함께 사용된다. 처리량의 대가를 수치로 적어 두어야 한다.
추측 디코딩의 한계. MTP-5는 두 번째 런에서 cudaErrorIllegalAddress. MTP-1로 안전하게 유지. 수용률이 위치별로 84.7%에서 급락하는 패턴도 기록된다.
3. 언제 vLLM인가
| 상황 | 선택 |
|---|---|
| 동시 요청·API 서빙, 노드 이상 | vLLM |
| 혼자·소수, 로컬 대화 | llama.cpp·Ollama |
| GPU 1장·WSL·컨테이너 환경 | shm·드라이버 이슈를 감수할 의지 |
| 지속 고부하, 정확도 민감 | FP8 KV 대신 안전한 dtype 검증 |
실무 처방: 버전을 핀하고, shm/컨테이너 환경을 먼저 검증하고, 재시작 전략을 엔지니어링으로 받아들여라. "rock solid"한 단일 플래그 조합은 커뮤니티에도 아직 없다.
4. 결론 — 서버의 물리
vLLM의 사용자 기록은 한 문장으로 압축된다. 동시성이 곧 성능이고, 그 성능은 하드웨어·버전·공유 메모리의 물리에 매여 있다.
95K tok/s의 노드와 shm 브로드캐스트로 죽는 두 시간은 같은 프레임워크의 다른 얼굴이다. 전자는 "엔진이 무엇을 할 수 있는가", 후자는 "운영이 무엇을 감수하는가"를 말한다.
vLLM을 선택할 팀: ① 동시성 요구가 확실한지, ② GPU·양자화·KV dtype을 측정으로 고를 사람, ③ 장애 시 재시작·관측을 담당할 인프라. 그 세 가지가 있으면, 오픈소스 서빙 엔진의 기준점은 여전히 vLLM이다.
관련 글: llama.cpp 사용자 리뷰 · Hugging Face 사용자 리뷰 · vLLM 에이전트 허브 항목
출처
- shm 장애: Safest way to run vllm for production? (r/Vllm, 2026-08)
- 단일 vs 동시: Understanding vLLM Performance (r/Vllm, 2026-03)
- 노드 실측: 5K tok/s per node with vLLM v0.18.0 on B200 (r/Vllm, 2026-03)
- 하드웨어 트러블: Advice needed please (r/Vllm, 2026-07)
- 엔드포인트 실측: Qwen3.6-27B-FP8 on One RTX 6000 Ada (r/Vllm, 2026-07)
연결된 글
이 글을 참조하는 글 1
- 모델이 사는 곳 — Hugging Face의 무료와 인프라 사이 / reviews
이 글이 참조하는 글 2
- 추론 엔진의 쓸쓸함 — llama.cpp는 왜 누구도 없으면 안 되나 / reviews
- 모델이 사는 곳 — Hugging Face의 무료와 인프라 사이 / reviews
AI Knowledge Hub