Update CURRENT_TASK: Phase 19-6C Complete (+1.98% GO)

This commit is contained in:
Moe Charm (CI)
2025-12-15 21:36:46 +09:00
parent 3bf0811c42
commit a82dad1cb2

View File

@ -80,6 +80,40 @@
**Ref**:
- `docs/analysis/PHASE19_FASTLANE_INSTRUCTION_REDUCTION_6B_FREE_STATIC_ROUTE_FOR_FREE_AB_TEST_RESULTS.md`
### Phase 19-6C Duplicate tiny_route_for_class() Consolidation — ✅ GO (+1.98%)
**Goal**: Eliminate 2-3x redundant route computations in free path
- `free_tiny_fast_hot()` line 654-661: Computed route_kind_free (SmallRouteKind)
- `free_tiny_fast_cold()` line 389-402: **RECOMPUTED** route (tiny_route_kind_t) — REDUNDANT
- `free_tiny_fast()` legacy_fallback line 894-905: **RECOMPUTED** same as cold — REDUNDANT
**Solution**: Pass-down pattern (no function split)
- Create helper: `free_tiny_fast_compute_route_and_heap()`
- Compute route once in caller context, pass as 2 parameters
- Remove redundant computation from cold path body
- Update call sites to use helper instead of recomputing
**A/B Test Results** (Mixed 10-run):
- Baseline (Phase 19-6B state): mean **53.49M** ops/s
- Optimized (Phase 19-6C): mean **54.55M** ops/s
- Delta: **+1.98% mean** → ✅ GO (exceeds +0.5-1.0% target)
**Changes**:
- File: `core/front/malloc_tiny_fast.h`
- Add helper function `free_tiny_fast_compute_route_and_heap()` (lines 382-403)
- Modify `free_tiny_fast_cold()` signature to accept pre-computed route + use_tiny_heap (lines 411-412)
- Remove route computation from cold path body (was lines 416-429)
- Update call site in `free_tiny_fast_hot()` cold_path label (lines 720-722)
- Replace duplicate computation in `legacy_fallback` with helper call (line 901)
**Key insight**:
- Instruction delta: -15-25 instructions per cold-path free (~20% of cold path overhead)
- Route computation eliminated: 1x (was computed 2-3x before)
- Parameter passing overhead: negligible (2 ints on stack)
**Ref**:
- `docs/analysis/PHASE19_FASTLANE_INSTRUCTION_REDUCTION_6C_DUPLICATE_ROUTE_DEDUP_DESIGN.md`
---
## 更新メモ2025-12-15 Phase 19-3b ENV-SNAPSHOT-PASSDOWN