
vLLM 및 SGLang 환경에서 Qwen3.6-27B 모델을 대상으로 한 모든 Speculative Decoding (Spec-decode)
요약
vLLM과 SGLang 환경에서 Qwen3.6-27B 모델을 대상으로 다양한 Speculative Decoding 기법의 성능을 비교 분석했습니다. 실험 결과 DFlash 방식이 가장 압도적인 속도 향상을 보였으며, EAGLE3와 MTP 등 각 기법별 특이점을 확인했습니다.
핵심 포인트
- DFlash 방식이 SGLang에서 약 3.3배, vLLM에서 2.5배의 가장 높은 속도 향상을 기록함
- MTP/NEXTN은 초안 깊이가 깊어질수록 성능이 상승하는 경향을 보임
- EAGLE3는 특정 조건(K=3) 이후 성능이 평탄해지는 특성을 보임
- NVFP4 양자화 모델 사용 시 DFlash 샘플러의 shape 충돌 문제를 패치로 해결함
https://preview.redd.it/wluwwp6s4heh1.png?width=1248&format=png&auto=webp&s=6e95d963645c5a0ef750bf81324a6d4dcbc0389e 지난 며칠 동안 단일 RTX PRO 6000 Max-Q에서 Qwen3.6-27B (dense, NVFP4) 모델을 대상으로 MTP, DFlash, EAGLE3 및 ngram 방식에 대해 vLLM과 SGLang을 비교하며 Speculative Decoding (Spec-decode) 성능을 측정했습니다. 모든 엔진에 대해 동일한 고정 클라이언트를 사용하였고, 지점당 3회의 재시작 샘플링(restart-samples)을 수행했으므로 수치는 비교 가능할 것입니다. Spec-Bench, greedy, batch 1 기준이며, 6개 카테고리의 평균값입니다. 각 엔진의 Speculative Decoding 미적용(no-spec) 베이스라인 대비 속도 향상(Speedup): DFlash: 압도적인 차이로 가장 우수함. SGLang에서 약 3.3배, vLLM에서 약 2.5배 (수학적 추론(math_reasoning) 단독으로는 최대 4.6배). MTP / NEXTN: 약 2.2배에서 2.8배 사이이며, 초안 깊이(draft depth)를 높일수록 계속 상승함. EAGLE3: 약 1.9배이며, K=3에서 정점을 찍은 후 평탄해짐. 이는 NEXTN과는 정반대의 결과로, 저를 놀라게 했습니다. ngram: 고생할 가치가 거의 없음, 약 1.1배에서 1.3배. 저녁 시간을 통째로 잡아먹은 두 가지 문제: 첫째, EAGLE3는 이 모델에 대해 vLLM에서 아예 로드되지 않습니다 (hf_hub의 head_dim 검증기가 head를 거부함). SGLang에서만 가능하며, 그마저도 패치된 빌드가 필요합니다. 둘째, SGLang에서 DFlash를 사용할 때 첫 번째 토큰에서 충돌이 발생했는데, 확인 결과 DFlash 샘플러가 lm_head에 대해 raw matmul을 수행하는데, nvidia NVFP4 체크포인트가 이를 양자화(quantize)하고 있어 shape이 깨지는 문제였습니다. head를 역양자화(dequant)하는 약 15줄의 패치로 해결되었습니다. 또한 max-running-requests를 제한하지 않으면 mamba/GDN 캐시로 인해 풀(pool)에서 OOM(Out of Memory)이 발생했습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 r/LocalLLaMA의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기