Moe Charm (CI)
8875132134
Phase 5 E5-1: Free Tiny Direct Path (+3.35% GO)
Target: Consolidate free() wrapper overhead (29.56% combined)
- free() wrapper: 21.67% self%
- free_tiny_fast_cold(): 7.89% self%
Strategy: Single header check in wrapper → direct call to free_tiny_fast()
- Eliminates redundant header validation (validated twice before)
- Bypasses cold path routing for Tiny allocations
- High coverage: 48% of frees in Mixed workload are Tiny
Implementation:
- ENV gate: HAKMEM_FREE_TINY_DIRECT=0/1 (default 0)
- core/box/free_tiny_direct_env_box.h: ENV gate
- core/box/free_tiny_direct_stats_box.h: Stats counters
- core/box/hak_wrappers.inc.h: Wrapper integration (lines 593-625)
Safety gates:
- Page boundary guard ((ptr & 0xFFF) != 0)
- Tiny magic validation ((header & 0xF0) == 0xA0)
- Class bounds check (class_idx < 8)
- Fail-fast fallback to existing paths
A/B Test Results (Mixed, 10-run, 20M iters):
- Baseline (DIRECT=0): 44.38M ops/s (mean), 44.45M ops/s (median)
- Optimized (DIRECT=1): 45.87M ops/s (mean), 45.95M ops/s (median)
- Improvement: +3.35% mean, +3.36% median
Decision: GO (+3.35% >= +1.0% threshold)
- 3rd consecutive success with consolidation/deduplication pattern
- E4-1: +3.51%, E4-2: +21.83%, E5-1: +3.35%
- Health check: PASS (all profiles)
Phase 5 Cumulative:
- E4 Combined: +6.43%
- E5-1: +3.35%
- Estimated total: ~+10%
Deliverables:
- docs/analysis/PHASE5_E5_COMPREHENSIVE_ANALYSIS.md
- docs/analysis/PHASE5_E5_1_FREE_TINY_DIRECT_1_DESIGN.md
- docs/analysis/PHASE5_E5_1_FREE_TINY_DIRECT_1_AB_TEST_RESULTS.md
- CURRENT_TASK.md (E5-1 complete)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-14 05:52:32 +09:00
..
2025-12-14 05:52:32 +09:00
2025-12-14 00:59:12 +09:00
2025-12-05 23:41:01 +09:00
2025-12-10 09:08:18 +09:00
2025-11-11 01:47:06 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-12-01 16:37:59 +09:00
2025-11-05 12:31:14 +09:00
2025-12-09 21:50:15 +09:00
2025-11-05 12:31:14 +09:00
2025-11-08 17:08:00 +09:00
2025-11-08 17:08:00 +09:00
2025-12-13 15:31:08 +09:00
2025-12-10 09:08:18 +09:00
2025-12-01 16:37:59 +09:00
2025-11-29 06:57:03 +09:00
2025-12-02 20:56:55 +09:00
2025-11-05 12:31:14 +09:00
2025-11-28 17:00:56 +09:00
2025-11-05 12:31:14 +09:00
2025-12-10 09:08:18 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-12-10 09:08:18 +09:00
2025-12-09 21:50:15 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-12-10 09:08:18 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-12-10 09:08:18 +09:00
2025-12-01 22:06:10 +09:00
2025-11-26 15:43:45 +09:00
2025-12-10 09:15:24 +09:00
2025-11-07 01:27:04 +09:00
2025-12-02 19:13:28 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-12-07 03:12:27 +09:00
2025-12-05 15:31:44 +09:00
2025-12-10 09:08:18 +09:00
2025-12-10 09:08:18 +09:00
2025-11-20 07:32:30 +09:00
2025-11-11 01:47:06 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-12-05 15:31:44 +09:00
2025-12-05 15:31:44 +09:00
2025-12-04 16:21:54 +09:00
2025-12-13 05:35:46 +09:00
2025-12-13 05:35:46 +09:00
2025-12-09 21:50:15 +09:00
2025-11-05 12:31:14 +09:00
2025-11-26 13:14:18 +09:00
2025-11-05 12:31:14 +09:00
2025-12-10 09:08:18 +09:00
2025-12-05 23:41:01 +09:00
2025-12-04 14:22:48 +09:00
2025-12-10 09:08:18 +09:00
2025-11-05 12:31:14 +09:00
2025-12-10 09:08:18 +09:00
2025-12-10 09:08:18 +09:00
2025-11-13 06:50:20 +09:00
2025-11-07 01:27:04 +09:00
2025-12-03 12:11:27 +09:00
2025-11-13 14:25:54 +09:00
2025-11-27 03:18:33 +09:00
2025-11-05 12:31:14 +09:00
2025-11-21 03:20:42 +09:00
2025-12-10 09:08:18 +09:00
2025-12-10 09:08:18 +09:00
2025-12-10 09:08:18 +09:00
2025-11-13 06:50:20 +09:00
2025-11-13 06:50:20 +09:00
2025-12-10 09:08:18 +09:00
2025-11-26 13:14:18 +09:00
2025-12-10 09:08:18 +09:00
2025-11-30 07:16:50 +09:00
2025-12-07 03:12:27 +09:00
2025-12-10 09:08:18 +09:00
2025-11-05 12:31:14 +09:00
2025-11-20 07:32:30 +09:00
2025-11-05 12:31:14 +09:00
2025-12-04 14:22:48 +09:00
2025-12-07 03:12:27 +09:00
2025-11-05 12:31:14 +09:00
2025-11-14 01:02:00 +09:00
2025-11-14 05:41:49 +09:00
2025-12-07 22:49:28 +09:00
2025-12-10 09:08:18 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-27 04:35:47 +09:00
2025-11-27 04:35:47 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-12-02 20:32:22 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-21 01:23:59 +09:00
2025-11-05 12:31:14 +09:00
2025-12-10 09:08:18 +09:00
2025-12-07 22:49:28 +09:00
2025-11-07 01:27:04 +09:00
2025-11-21 03:20:42 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-12-04 16:21:54 +09:00
2025-12-10 09:08:18 +09:00
2025-11-11 00:02:24 +09:00
2025-11-28 18:16:32 +09:00
2025-12-01 16:37:59 +09:00
2025-11-22 09:34:35 +09:00
2025-12-01 22:06:10 +09:00
2025-12-10 09:08:18 +09:00
2025-12-10 09:08:18 +09:00
2025-11-20 07:32:30 +09:00
2025-11-20 07:32:30 +09:00
2025-12-10 22:57:26 +09:00
2025-12-02 19:13:28 +09:00
2025-11-28 16:08:44 +09:00
2025-12-03 20:42:28 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-11-05 12:31:14 +09:00
2025-12-12 01:04:55 +09:00
2025-11-05 12:31:14 +09:00
2025-11-27 05:19:56 +09:00
2025-11-10 18:04:08 +09:00
2025-12-12 00:53:42 +09:00
2025-12-10 09:08:18 +09:00
2025-11-26 13:14:18 +09:00
2025-11-17 03:22:27 +09:00
2025-11-21 23:00:24 +09:00
2025-11-09 16:49:34 +09:00
2025-11-08 23:53:25 +09:00
2025-11-17 03:22:27 +09:00
2025-11-09 18:55:50 +09:00
2025-11-14 15:00:13 +09:00
2025-11-14 15:00:13 +09:00
2025-11-14 14:29:05 +09:00
2025-11-09 18:55:50 +09:00
2025-11-14 14:29:05 +09:00
2025-11-09 18:55:50 +09:00
2025-11-14 15:32:07 +09:00
2025-11-09 18:55:50 +09:00
2025-12-04 16:21:54 +09:00
2025-11-13 06:50:20 +09:00
2025-12-12 03:12:28 +09:00
2025-12-05 23:41:01 +09:00
2025-12-12 19:19:25 +09:00
2025-12-11 07:40:22 +09:00
2025-12-11 19:17:30 +09:00
2025-12-12 05:51:27 +09:00
2025-12-11 23:51:48 +09:00
2025-12-11 22:45:14 +09:00
2025-12-11 02:39:32 +09:00
2025-12-11 13:32:46 +09:00
2025-12-12 06:37:06 +09:00
2025-12-12 19:19:25 +09:00
2025-12-13 18:46:11 +09:00
2025-12-12 19:19:25 +09:00
2025-12-12 06:37:06 +09:00
2025-12-11 13:32:46 +09:00
2025-12-11 15:29:59 +09:00
2025-12-12 03:12:28 +09:00
2025-12-07 03:12:27 +09:00
2025-12-05 23:41:01 +09:00
2025-12-10 09:08:18 +09:00
2025-12-04 14:22:48 +09:00
2025-12-05 23:41:01 +09:00
2025-12-10 09:08:18 +09:00
2025-11-20 07:32:30 +09:00
2025-11-20 07:32:30 +09:00
2025-12-03 21:56:52 +09:00
2025-12-04 04:58:22 +09:00
2025-12-13 22:03:27 +09:00
2025-11-27 03:18:33 +09:00
2025-12-10 09:08:18 +09:00
2025-11-06 21:54:12 +09:00
2025-11-14 01:02:00 +09:00
2025-11-26 13:14:18 +09:00
2025-12-11 22:16:07 +09:00
2025-12-11 22:16:07 +09:00
2025-11-29 06:47:13 +09:00
2025-12-04 16:21:54 +09:00
2025-12-12 16:26:42 +09:00
2025-11-28 00:43:07 +09:00
2025-12-10 09:08:18 +09:00
2025-12-10 09:08:18 +09:00
2025-11-29 06:57:03 +09:00
2025-12-13 22:03:27 +09:00
2025-12-02 20:25:48 +09:00
2025-12-02 20:25:48 +09:00
2025-11-09 23:15:02 +09:00
2025-12-04 18:53:04 +09:00
2025-12-11 12:53:03 +09:00
2025-12-10 09:08:18 +09:00
2025-12-13 18:46:11 +09:00
2025-12-10 09:08:18 +09:00
2025-11-05 12:31:14 +09:00
2025-11-07 01:27:04 +09:00
2025-11-26 14:45:26 +09:00
2025-12-10 09:08:18 +09:00
2025-11-30 11:06:44 +09:00
2025-12-13 15:31:08 +09:00
2025-11-07 01:27:04 +09:00
2025-12-07 03:12:27 +09:00
2025-11-05 12:31:14 +09:00
2025-12-10 09:08:18 +09:00
2025-11-07 01:27:04 +09:00
2025-11-05 12:31:14 +09:00
2025-12-05 23:41:01 +09:00
2025-12-10 09:08:18 +09:00
2025-11-06 21:54:12 +09:00
2025-11-07 22:34:24 +09:00
2025-11-05 12:31:14 +09:00