TL;DR
작성자가 DSpark PC Tree를 llama.cpp에 구현하고 Qwen 3.0에서 PCTree 설정별 speculative decoding 성능을 비교했습니다. RTX5090 환경에서 Plain은 94.27 tok/s였지만 PCTree k3/n16은 159.00 tok/s와 1.69배를 기록했으며 수락률은 67.87%였습니다. k4/n22는 수락률이 72.16%로 더 높았지만 verifier batch 비용 때문에 처리량이 k3/n16보다 낮았습니다. 11개 카테고리 중 9개에서 선형 DSpark를 앞섰지만 Qwen 3.8 27B Q4에서는 성능이 개선되지 않았고, 작성자는 다른 모델의 재현 테스트를 요청했습니다.
섹션별 상세
용어 해설
- 추측적 디코딩(Speculative Decoding)
- — 작은 draft 모델이 다음 토큰 후보를 먼저 생성하고 target 모델이 이를 한 번에 검증하는 추론 최적화 방식입니다. 후보가 수락되면 target 모델의 순차 계산을 줄여 출력 속도를 높이며, 수락률과 검증 배치 비용이 실제 처리량을 좌우합니다.
- 초안 모델(Draft Model)
- — Speculative Decoding에서 target 모델보다 가볍게 토큰 후보를 생성하는 모델입니다. 생성된 후보는 target 모델의 검증을 거쳐 출력에 반영되며, 후보 생성 속도와 target 모델과의 일치도가 최종 성능을 결정합니다.
- 검증 배치(Verification Batch)
- — draft 모델이 만든 여러 토큰 후보를 target 모델이 동시에 평가하는 묶음입니다. 후보를 많이 검증하면 수락 토큰 수가 늘 수 있지만, 배치 처리 비용이 커져 전체 처리량이 오히려 낮아질 수 있습니다.
- 수락률(Acceptance Rate)
- — draft 모델이 생성한 토큰 가운데 target 모델의 검증을 통과한 비율입니다. 이 값이 높을수록 speculative decoding이 순차 생성 대신 후보 묶음을 활용할 가능성이 커지지만, 수락률만으로 최종 tok/s가 결정되지는 않습니다.
코드 예제
llama-server.exe `
-m Qwen3-8B-BF16.gguf `
-md dspark-Qwen3-8B-BF16.gguf `
--spec-type draft-dspark `
--spec-draft-n-max 3 `
--spec-dspark-pctree `
--spec-dspark-pctree-k 3 `
--spec-dspark-pctree-n 16 `
-ngl all `
-ngld all `
-c 8192 `
--parallel 1 `
--temp 0 `
--jinja `
--host 127.0.0.1 `
--port 8080llama-server에서 Qwen3-8B-BF16.gguf와 DSpark draft 모델을 연결하고 PCTree k3/n16 설정으로 speculative decoding을 실행하는 명령입니다.
언급된 도구
DSpark와 PCTree speculative decoding 구현을 적용한 추론 실행 환경입니다.
언급된 리소스
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.