Moe Charm (CI)
7adbcdfcb6
Phase 54-60: Memory-Lean mode, Balanced mode stabilization, M1 (50%) achievement
## Summary
Completed Phase 54-60 optimization work:
**Phase 54-56: Memory-Lean mode (LEAN+OFF prewarm suppression)**
- Implemented ss_mem_lean_env_box.h with ENV gates
- Balanced mode (LEAN+OFF) promoted as production default
- Result: +1.2% throughput, better stability, zero syscall overhead
- Added to bench_profile.h: MIXED_TINYV3_C7_BALANCED preset
**Phase 57: 60-min soak finalization**
- Balanced mode: 60-min soak, RSS drift 0%, CV 5.38%
- Speed-first mode: 60-min soak, RSS drift 0%, CV 1.58%
- Syscall budget: 1.25e-7/op (800× under target)
- Status: PRODUCTION-READY
**Phase 59: 50% recovery baseline rebase**
- hakmem FAST (Balanced): 59.184M ops/s, CV 1.31%
- mimalloc: 120.466M ops/s, CV 3.50%
- Ratio: 49.13% (M1 ACHIEVED within statistical noise)
- Superior stability: 2.68× better CV than mimalloc
**Phase 60: Alloc pass-down SSOT (NO-GO)**
- Implemented alloc_passdown_ssot_env_box.h
- Modified malloc_tiny_fast.h for SSOT pattern
- Result: -0.46% (NO-GO)
- Key lesson: SSOT not applicable where early-exit already optimized
## Key Metrics
- Performance: 49.13% of mimalloc (M1 effectively achieved)
- Stability: CV 1.31% (superior to mimalloc 3.50%)
- Syscall budget: 1.25e-7/op (excellent)
- RSS: 33MB stable, 0% drift over 60 minutes
## Files Added/Modified
New boxes:
- core/box/ss_mem_lean_env_box.h
- core/box/ss_release_policy_box.{h,c}
- core/box/alloc_passdown_ssot_env_box.h
Scripts:
- scripts/soak_mixed_single_process.sh
- scripts/analyze_epoch_tail_csv.py
- scripts/soak_mixed_rss.sh
- scripts/calculate_percentiles.py
- scripts/analyze_soak.py
Documentation: Phase 40-60 analysis documents
## Design Decisions
1. Profile separation (core/bench_profile.h):
- MIXED_TINYV3_C7_SAFE: Speed-first (no LEAN)
- MIXED_TINYV3_C7_BALANCED: Balanced mode (LEAN+OFF)
2. Box Theory compliance:
- All ENV gates reversible (HAKMEM_SS_MEM_LEAN, HAKMEM_ALLOC_PASSDOWN_SSOT)
- Single conversion points maintained
- No physical deletions (compile-out only)
3. Lessons learned:
- SSOT effective only where redundancy exists (Phase 60 showed limits)
- Branch prediction extremely effective (~0 cycles for well-predicted branches)
- Early-exit pattern valuable even when seemingly redundant
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-17 06:24:01 +09:00
..
2025-12-17 06:24:01 +09:00
2025-12-17 06:24:01 +09:00
2025-12-05 23:41:01 +09:00
2025-12-10 09:08:18 +09:00
2025-12-17 06:24:01 +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-16 15:01:56 +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-16 06:33:41 +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-16 05:35:11 +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-16 15:01:56 +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-16 15:01:56 +09:00
2025-12-12 19:19:25 +09:00
2025-12-16 15:01:56 +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-17 06:24:01 +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-16 06:33:41 +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-16 05:35:11 +09:00
2025-12-11 12:53:03 +09:00
2025-12-10 09:08:18 +09:00
2025-12-15 00:32:25 +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-16 15:01:56 +09:00
2025-11-30 11:06:44 +09:00
2025-12-16 05:35:11 +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-16 05:35:11 +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