# Phase 01: LLM Tuning — PLAN

## 목표
듀얼 RTX 3060 (24GB VRAM, 96GB DDR4) 환경에서 5가지 모델의 최적 추론 설정을 확정한다.

## 완료 태스크

### Task 1: Gemma 4 26B-A4B (Fast Tier) ✅
- 실측: **74.65 t/s** (AVG), 256K 컨텍스트
- 듀얼 GPU, 캐시 타입 f16, mlock 활성
- 전체 VRAM 적재 (16.8GB)

### Task 2: Qwen 3.5 35B-A3B (Balanced Tier) ✅
- 실측: **61.62 t/s** (AVG), 256K 컨텍스트
- 듀얼 GPU, tensor split 0.5/0.5, 캐시 q4_0
- 비대칭 스플릿 시 12+ t/s 하락 확인 → 0.5/0.5 확정

### Task 3: Gemma 4 31B Dense (Deep Coder) ✅
- 실측: **16.0 t/s** (AVG), 192K 컨텍스트 (한계)
- 듀얼 GPU, 전체 VRAM 적재
- 256K 시 OOM, 192K가 안정 최대값

### Task 4: Qwen 3.5 27B Dense (Deep Logic) ✅
- 실측: **16.7 t/s** (AVG), 256K 풀 컨텍스트
- 듀얼 GPU, tensor split 0.5/0.5
- System Prompt 누락 시 Empty Response 버그 확인

### Task 5: Qwen 3.5 122B-A10B MoE (Ultra Heavy) ✅
- 실측: **8.95 t/s** (BEST), 256K 컨텍스트
- **GPU 1 단독 사용** (-sm none --main-gpu 1)
- Expert CPU 오프로드 (n-cpu-moe=48)
- PCIe x4 병목 발견 → GPU 0 제외로 2배 속도 향상 (4.8 → 8.95 t/s)

## 핵심 발견사항 (Key Findings)

### GPU 0 PCIe x4 병목
- 메인보드: Gigabyte B550M AORUS ELITE
- GPU 0: PCIe 3.0 x4 (~4 GB/s) — 보조 슬롯
- GPU 1: PCIe 4.0 x16 (~32 GB/s) — 메인 슬롯
- MoE 모델처럼 CPU↔GPU 데이터 교환이 잦은 경우 GPU 0은 병목
- Dense 모델(VRAM 내 100% 적재)에서는 영향 미미

### 3-Tier → 5-Tier 전략 확장
- 원래 Fast/Balanced/Deep 3단계 → 5단계로 확장
- deep-coder (Gemma 4 31B)와 deep-logic (Qwen 27B) 추가

## 산출물
- `scripts/optimal_configs.py` — 실측값 레퍼런스 (deprecated → engine_models.json)
- `config/engine_models.json` — 프로덕션 설정 (Single Source of Truth)
- `scripts/_archive/results/` — 모든 벤치마크 결과 JSON
