2026년 8월 25일 화요일

LoRA 실전 ② — CPU로 어디까지 되나

GPU가 없다면? 결론부터: CPU는 추론용이지 학습용이 아니다. 하지만 그 추론이 생각보다 쓸 만하고, 2025년 이후 MoE 모델 덕분에 오히려 부활 중이다. CPU의 진짜 한계와 진짜 용도를 숫자로 정리한다.

CPU 추론의 물리학 — 대역폭이 곧 속도

  • ①편의 공식 재등장: tokens/s ≈ (RAM 대역폭 × 0.65) ÷ GGUF 파일 크기 (유도). 듀얼채널 DDR4-3200(51GB/s) → 7B Q4에서 5-8 t/s, DDR5-6000(96GB/s) → 13-15 t/s.
  • 반전: 채널 수가 MHz를 이긴다 — 12채널 DDR4 서버(307GB/s)가 4채널 DDR5 데스크톱(192GB/s)보다 빠르다(Hardware Corner). 중고 EPYC/Xeon이 x86에서 GPU급 생성 속도를 내는 유일한 경로.
  • Apple Silicon은 대역폭 사다리 그 자체(llama.cpp 공식 벤치): 7B Q4 기준 M1 14 t/s → M4 24 → M4 Pro 51 → M4 Max 83 → M2 Ultra 94 t/s. 60만원대 Mac mini M4(24 t/s)가 웬만한 x86 데스크톱을 이긴다.
  • 단, 프롬프트 처리(prefill)는 반대로 계산 바운드: llamafile의 수제 커널이 i9-14900K에서 13→50 t/s(+285%)를 만들었지만 생성 속도는 그대로였다(Justine Tunney). AVX-512/AMX는 긴 문서 RAG에는 도움, 채팅 속도에는 무의미.

CPU 학습은 죽었다 (x86 기준)

  • 2023년의 "llama.cpp로 CPU LoRA" 튜토리얼은 더 이상 작동하지 않는다 — finetune 예제는 2024년 7월 삭제(PR #8669)됐고, 2025년의 재도입은 FP32 full-FT 전용 실험 단계다.
  • 인텔의 CPU 가속 스택(IPEX, ipex-llm, CPU QLoRA)도 2024-2026년 사이 전부 아카이브됐다 — 최적화는 기본 PyTorch에 흡수. 2023-24년 튜토리얼의 IPEX 설치 안내는 무시하라.
  • 예외 하나: Apple Silicon + MLX. 통합 메모리 덕에 M1 Max 32GB에서 Mistral-7B LoRA가 ~250 tok/s로 학습된다(mlx_lm.lora 공식 문서) — 소규모 데이터셋이면 수십 분. Mac 유저의 정답.

2025-26의 반전 — MoE가 CPU를 부활시켰다

희소 MoE 모델(활성 파라미터 3B급)은 이야기가 다르다: 256GB/s급 미니PC(Ryzen AI MAX 'Strix Halo' 128GB)에서 Qwen3-30B-A3B가 52 t/s — 같은 기계에서 dense 32B는 9 t/s다(실측). llama.cpp의 --n-cpu-moe 플래그는 전문가 가중치를 RAM에, attention을 GPU에 두는 하이브리드로 120B급 MoE를 소비자 GPU 1장+대용량 RAM에서 굴린다. 반면 dense 12B를 16GB DDR4 데스크톱에서 돌리면 1-2 t/s로 사실상 불가(국내 실측 사례).

정리

CPU의 역할 분담: 양자화된 7-8B dense 또는 대형 MoE의 추론, 그리고 GPU에서 학습한 LoRA 어댑터의 서빙(convert_lora_to_gguf.py → --lora 플래그). 학습은 GPU/Colab/Mac에서, 추론은 어디서나. 다음 글: 그 GPU, 티어별로 뭐가 되는지 지도를 그린다.

— LoRA 실전 시리즈 ② / 다음 글: GPU 티어 가이드 2026

댓글 없음:

댓글 쓰기

국정원의 댓글 공작을 지탄합니다.

sLM 평가 방법론 ⑪ (완결) — 평가 챕터 쓰기: 심사위원이 재실행할 수 있게

마지막 편의 기준은 하나다: 적대적인 심사위원이 논문만 보고 모든 숫자를 재실행할 수 있는가. 2026년의 평가 보고는 체크리스트 주도·버전 고정이 표준이다. 체크리스트를 뼈대로 쓰라 ACL Responsible NLP 체크리스트 의 A~D절(한...