12GB VRAM에서 Qwen3.6 35B A3B와 llama.cpp MTP로 80 tok/sec 및 128K 컨텍스트 구현하기
핵심 요약
12GB VRAM 환경에서 llama.cpp의 MTP 기능을 활용해 35B 모델로 고속 추론을 구현하는 설정법을 공유함.
- MTP 활용 — llama.cpp의 Multi-Token Prediction 기능을 통해 토큰 생성 속도를 80 tok/sec 이상으로 높임.
- VRAM 최적화 — 12GB VRAM 환경에서 모델 일부를 CPU로 오프로드하고 -fitt 파라미터로 메모리 균형을 맞춤.
- 설정 공유 — RTX 4070 Super 환경에서 128K 컨텍스트를 유지하며 효율적인 추론을 수행하는 구체적인 커맨드 제공.
- 성능 벤치마크 — 다양한 작업 유형에서 70~80 tok/sec의 안정적인 성능을 기록함.
12GB GPU를 가진 다른 분들이 적은 VRAM으로도 꽤 괜찮은 토큰 생성 속도를 낼 수 있도록 제 설정을 공유하고 싶었습니다. 최신 llama.cpp 빌드와 MTP PR을 사용해서, 여기 있는 벤치마크에서 80% 이상의 드래프트 수락률과 80 tok/sec 이상의 속도를 얻었습니다: https://gist.githubusercontent.com/am17an/228edfb84ed082aa88e3865d6fa27090/raw/7a2cee40ee1e2ca5365f4cef93632193d7ad852a/mtp-bench.py
이건 RTX 4070 Super 기준이라 다른 그래픽카드에서는 결과가 다를 수 있습니다.
MTP 지원 llama.cpp를 실행하려면 소스에서 직접 빌드하고 아직 마스터 브랜치에 병합되지 않은 드래프트 PR을 추가해야 합니다. 그 방법을 설명하는 아주 좋은 가이드와 Qwen3.6 MTP GGUF 다운로드 링크는 여기 있습니다: https://huggingface.co/havenoammo/Qwen3.6-35B-A3B-MTP-GGUF
llama.cpp 실행 명령어:
llama-server \
-m Qwen3.6-35B-A3B-MTP-UD-Q4_K_XL.gguf \
-fitt 1536 \
-c 131072 \
-n 32768 \
-fa on \
-np 1 \
-ctk q8_0 \
-ctv q8_0 \
-ctkd q8_0 \
-ctvd q8_0 \
-ctxcp 64 \
--no-mmap \
--mlock \
--no-warmup \
--spec-type mtp \
--spec-draft-n-max 2 \
--chat-template-kwargs '{"preserve_thinking": true}' \
--temp 0.6 \
--top-p 0.95 \
--top-k 20 \
--min-p 0.0 \
--presence-penalty 0.0 \
--repeat-penalty 1.0
여기서 가장 중요한 파라미터는 -fitt 1536입니다. 모델 크기 때문에 일부가 CPU로 오프로드되는데, 이 설정은 llama.cpp가 GPU/CPU 부하를 적절히 분배하여 최상의 성능을 내도록 하고 MTP 드래프트 모델과 KV 캐시를 위해 1536MB의 여유 메모리를 남겨둡니다. 저는 dGPU를 보조 GPU로 사용하고(모니터는 iGPU에 연결) 있어서 12GB VRAM 전체를 추론에 사용할 수 있습니다. dGPU를 주 GPU로 사용한다면 1536은 너무 작을 수 있습니다.
벤치마크 결과:
mtp-bench.py
code_python pred= 192 draft= 132 acc= 125 rate=0.947 tok/s=80.8
code_cpp pred= 58 draft= 40 acc= 37 rate=0.925 tok/s=81.8
explain_concept pred= 192 draft= 152 acc= 114 rate=0.750 tok/s=70.0
summarize pred= 53 draft= 40 acc= 32 rate=0.800 tok/s=75.4
qa_factual pred= 192 draft= 144 acc= 119 rate=0.826 tok/s=77.8
translation pred= 22 draft= 16 acc= 13 rate=0.812 tok/s=81.9
creative_short pred= 192 draft= 160 acc= 111 rate=0.694 tok/s=69.2
stepwise_math pred= 192 draft= 144 acc= 119 rate=0.826 tok/s=76.5
long_code_review pred= 192 draft= 148 acc= 117 rate=0.790 tok/s=73.2
질문이 있으시면 언제든 물어보세요 :)
건승을 빕니다.

