llama.cpp PR, GPU에서 '핫'한 MoE 전문가 캐싱 — 8GB VRAM으로 33에서 56 tok/s 달성
A llama.cpp PR caches “hot” MoE experts on the GPU — 33 → 56 tok/s reported with 8GB VRAM
핵심 요약
llama.cpp의 새로운 PR이 자주 쓰이는 MoE 전문가를 VRAM에 캐싱하여 성능을 향상시키는 방식을 제안했습니다.
- MoE 전문가 캐싱 — 자주 사용되는 전문가를 VRAM에 유지하여 추론 속도를 높임
- 성능 향상 — Qwen3.6-35B 모델 기준 8GB VRAM에서 최대 2배 이상의 속도 개선 확인
- 제한 사항 — 현재 CUDA 환경에서만 작동하며 모델에 따라 오히려 느려질 수 있음
- 기술적 과제 — 전문가 캐싱으로 인한 미세한 출력값 차이와 캐시 관리 오버헤드 존재
llama.cpp의 새로운 PR(#26563)은 가장 자주 사용되는 MoE 전문가를 추적하는 히트맵을 추가합니다.
모든 전문가를 GPU에 유지하거나 전부 오프로드하는 대신, 자주 선택되는 전문가를 VRAM에 캐싱하고 나머지 전문가들은 CPU에서 계속 실행되도록 합니다.
8GB VRAM을 사용한 Qwen3.6-35B-A3B 모델에서의 작성자 테스트 결과는 다음과 같습니다:
Q2_M: 33.25 → 56.0 tok/s (1.68배)
Q5_K_P: 17.34 → 35.93 tok/s (2.07배)
--expert-hot-s -1 옵션으로 Autofit 활성화
부정적인 결과가 아마 더 흥미로울 것입니다: Qwen3.5-122B-A10B와 Laguna-S-2.1은 캐싱을 활성화했을 때 오히려 더 느려졌습니다.
따라서 이것이 모든 MoE 모델을 더 빠르게 만드는 만능 스위치는 아닙니다. 제 생각에는 전문가 재사용 빈도가 추가적인 추적 및 캐시 관리 오버헤드를 상쇄할 만큼 높을 때만 도움이 되는 것 같습니다.
현재 제한 사항:
CUDA 전용
단일 토큰 디코딩 중에만 활성화
어떤 전문가가 캐싱되느냐에 따라 출력이 약간 달라질 수 있음
아직 진행 중인 PR이며 llama.cpp에 병합되지 않음
이 방식은 극단적으로 낮은 양자화를 사용하지 않고도 소비자용 GPU에서 더 큰 MoE 모델을 실행하기 위한 유용한 방향으로 보입니다.
혹시 3060, 4060 또는 다른 8~12GB 카드에서 이 브랜치를 테스트해 보신 분 계신가요? 특히 코딩, 일반 채팅, 긴 문맥 작업 전반에 걸쳐 히트율과 tok/s를 비교한 결과를 보고 싶습니다.
출처: llama.cpp PR #26563

