fast (Gemma 4 26B-A4B):
- Enable mmproj GPU loading (vision ~1s, 12x faster than CPU)
- KV f16 → q8_0 (save ~2.5 GB VRAM for mmproj)
- Tensor split 0.5,0.5 → 0.43,0.57 (13/17 layers)
- Remove --mlock/--poll/--prio/-t/-tb (no measurable impact)
- measured_tps 74.65 → 71.89 (trade 3.7% speed for vision)
balanced (Qwen 3.5 35B-A3B):
- Tensor split 0.5,0.5 → 0.48,0.52 (enables pipeline parallelism)
- Ubatch 128 → 256 (prefill +78%: 649 → 1,157 t/s)
- mmproj + --no-mmproj-offload (CPU vision, VRAM headroom)
- Remove useless flags same as fast
- measured_tps 61.62 → 64.16 (+4.1%)
Other:
- Document full retuning in docs/v3_{fast,balanced}_retuning_log.md
- Session report at .planning/reports/20260411-session-report.md
- Add bench utilities: bench_short/bench_long/test_ts_ratios
- Speculative decoding (E2B draft) experimented but rejected
(+14% gen vs -31% cold start + tokenizer mismatch + mmproj conflict)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2.8 KiB
2.8 KiB
Phase 01: LLM Tuning — Verification Report
검증 결과
| # | 모델 | 역할 | 실측 속도 | 컨텍스트 | GPU 구성 | 상태 |
|---|---|---|---|---|---|---|
| 1 | Gemma 4 26B-A4B Q4_K_M | fast | 71.89 t/s ‡ | 256K | 듀얼 | ✅ |
| 2 | Qwen 3.5 35B-A3B Q4_K_M | balanced | 64.16 t/s † | 256K | 듀얼 | ✅ |
| 3 | Gemma 4 31B Dense Q4_K_M | deep-coder | 16.0 t/s | 192K | 듀얼 | ✅ |
| 4 | Qwen 3.5 27B Dense Q4_K_M | deep-logic | 16.7 t/s | 256K | 듀얼 | ✅ |
| 5 | Qwen 3.5 122B-A10B Q4_K_M | ultra | 8.95 t/s | 256K | GPU 1만 | ✅ |
UAT 기준 달성 여부
- Fast tier ≥ 70 t/s → 71.89 t/s ✅
- Balanced tier ≥ 50 t/s → 64.16 t/s ✅
- Deep tier 안정 구동 → 16.0 / 16.7 t/s ✅
- Ultra tier 구동 가능 → 8.95 t/s ✅
- 모든 모델 VRAM 12GB x 2 이내 → ✅
- 최적 설정값 JSON으로 체계화 →
config/engine_models.json✅
Phase Status: ✅ COMPLETE
완료 일시: 2026-04-07
† balanced 역할 재튜닝 (2026-04-11):
이후 세션에서 balanced (Qwen3.5-35B-A3B) 설정을 실측 기반으로 재검증. 기존 Phase 01 튜닝은 단일 GPU 환경(found 1 CUDA devices 로그로 확인)에서 수행됐고, 이후 듀얼 GPU + mmproj 옵션 추가로 설정이 drift된 상태였음. v3 재튜닝 결과 61.62 → 64.16 t/s (+4.1%) 달성. 상세 과정/증적은 docs/v3_balanced_retuning_log.md 참조.
주요 변경점:
-ub 128 → 256(prefill +78%, 긴 프롬프트 3,100 tok 기준 649 → 1,157 t/s)-ts 0.5,0.5 → 0.48,0.52(compute buffer 여유 확보)--mlock,--poll 50,--prio 3제거 (실측 영향 0.04 t/s)--mmproj+--no-mmproj-offload추가 (비전 기능 유지 + VRAM 858 MiB 확보)- GPU 0 PCIe 3.0 x4 슬롯 병목 진단 → Gen 속도 62 t/s 상한 원인 규명
‡ fast 역할 재튜닝 (2026-04-11):
fast (Gemma 4 26B-A4B) 설정도 동일 세션에서 재검증. Phase 01 측정치 74.65는 단일 GPU 조건. 듀얼 GPU + vision 지원 추가 과정에서 71.89 t/s로 확정 (-3.7%). 상세 과정/증적은 docs/v3_fast_retuning_log.md 참조.
주요 변경점:
--cache-type-k/v: f16 → q8_0(KV 절약 ~2.5 GB로 mmproj GPU 수용)--mmproj models/gemma-4-26B-mmproj-F16.gguf신규 추가 (Vision 지원, GPU 적재)-ts 0.43,0.57(13/17 레이어 분할, mmproj 수용 공간 확보)-ub 512 -b 2048(유지, 스윗스팟 재확인)--mlock,--poll 50,--prio 3,-t 6,-tb 6제거- Speculative Decoding(E2B draft) 실험 후 채택 안 함 — +14% 이득 vs 복잡성/cold start 페널티
- Vision GPU 인코딩 ~1초 (640×640 image, 283 tokens)