2026-07-22 로그
단일 노드 LLM 벤치마크 — 대역폭 병목과 MoE의 승리
4bit 모델 4종을 실측했다. dense는 크기에 반비례해 느려지고, 총 21B짜리 MoE가 14B dense보다 3배 빠르다.
측정 방법
MLX(mlx-lm)로 각 모델에 동일한 한국어 프롬프트를 주고 256토큰을 생성했다.
두 노드가 같은 사양이므로 모델을 나눠 병렬 측정했다. 모두 4bit 양자화
(gpt-oss-20b는 네이티브 MXFP4).
결과
| 모델 | 아키텍처 | Prompt tps | Generation tps | Peak memory |
|---|---|---|---|---|
| Qwen3-4B | dense 4B | 36.1 | 41.8 | 2.4GB |
| Qwen3-8B | dense 8B | 27.9 | 22.5 | 4.7GB |
| Qwen3-14B | dense 14B | 38.1 | 12.7 | 8.4GB |
| gpt-oss-20b | MoE 21B (활성 3.6B) | 83.3 | 35.8 | 12.2GB |
해석
1. dense 모델은 메모리 대역폭이 전부다. generation 속도가 파라미터 수에 거의 정확히 반비례한다(4B:41.8 → 8B:22.5 → 14B:12.7). LLM 디코딩은 토큰마다 전체 가중치를 한 번 읽어야 하므로, 속도 ≈ 메모리 대역폭 ÷ 가중치 크기라는 교과서 공식이 M4의 120GB/s 대역폭에서 그대로 재현된다.
2. 저활성 MoE가 16GB 하드웨어의 정답이다. gpt-oss-20b는 총 21B로 이번 세트에서 가장 크지만, 토큰당 활성 파라미터가 3.6B뿐이라 35.8 tok/s — 14B dense의 3배다. "용량은 크게, 읽기는 적게"가 통합 메모리 머신과 정확히 맞물린다.
3. 16GB의 한계선도 확인했다. gpt-oss-20b는 GPU 메모리 한도를 13GB로 올린 뒤에야 돌았고(peak 12.2GB), 여유가 1GB 남짓이라 긴 컨텍스트에서는 KV 캐시로 위험하다. 짧은 대화 전제의 구동이다.
체감 기준: 40 tok/s(4B)는 매우 쾌적, 20 tok/s(8B)는 실용, 12 tok/s(14B)는 참을 만한 수준. 다음 단계는 이 모델들을 브라우저에서 직접 써볼 수 있는 채팅 데모다 — 서비스 섹션에 올라올 예정.