Moe Charm (CI)
c19bb6a3bc
Phase 6-B: Header-based Mid MT free (lock-free, +2.65% improvement)
Performance Results (bench_mid_mt_gap, 1KB-8KB, ws=256):
- Before: 41.0 M ops/s (mutex-protected registry)
- After: 42.09 M ops/s (+2.65% improvement)
Expected vs Actual:
- Expected: +17-27% (based on perf showing 13.98% mutex overhead)
- Actual: +2.65% (needs investigation)
Implementation:
- Added MidMTHeader (8 bytes) to each Mid MT allocation
- Allocation: Write header with block_size, class_idx, magic (0xAB42)
- Free: Read header for O(1) metadata lookup (no mutex!)
- Eliminated entire registry infrastructure (127 lines deleted)
Changes:
- core/hakmem_mid_mt.h: Added MidMTHeader, removed registry structures
- core/hakmem_mid_mt.c: Updated alloc/free, removed registry functions
- core/box/mid_free_route_box.h: Header-based detection instead of registry lookup
Code Quality:
✅ Lock-free (no pthread_mutex operations)
✅ Simpler (O(1) header read vs O(log N) binary search)
✅ Smaller binary (127 lines deleted)
✅ Positive improvement (no regression)
Next: Investigate why improvement is smaller than expected
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 15:45:29 +09:00
..
2025-11-09 18:55:50 +09:00
2025-11-09 18:55:50 +09:00
2025-11-07 01:27:04 +09:00
2025-11-20 07:32:30 +09:00
2025-11-16 06:36:02 +09:00
2025-11-20 07:32:30 +09:00
2025-11-13 06:50:20 +09:00
2025-11-13 01:45:30 +09:00
2025-11-29 07:57:49 +09:00
2025-11-29 06:57:03 +09:00
2025-11-13 01:45:30 +09:00
2025-11-29 09:04:32 +09:00
2025-11-28 01:10:26 +09:00
2025-11-29 06:47:13 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 01:27:04 +09:00
2025-11-26 12:33:49 +09:00
2025-11-07 01:27:04 +09:00
2025-11-21 23:00:24 +09:00
2025-11-26 12:33:49 +09:00
2025-11-07 01:27:04 +09:00
2025-11-20 07:32:30 +09:00
2025-11-29 06:57:03 +09:00
2025-11-07 01:27:04 +09:00
2025-11-17 02:47:58 +09:00
2025-11-29 06:47:13 +09:00
2025-11-17 02:47:58 +09:00
2025-11-15 22:08:51 +09:00
2025-11-27 03:41:07 +09:00
2025-11-16 07:51:37 +09:00
2025-11-26 17:12:41 +09:00
2025-11-29 14:39:07 +09:00
2025-11-17 02:47:58 +09:00
2025-11-07 01:27:04 +09:00
2025-11-29 14:39:07 +09:00
2025-11-07 01:27:04 +09:00
2025-11-29 14:18:20 +09:00
2025-11-20 07:32:30 +09:00
2025-11-12 02:45:00 +09:00
2025-11-12 02:45:00 +09:00
2025-11-28 16:08:44 +09:00
2025-11-28 17:10:32 +09:00
2025-11-07 01:27:04 +09:00
2025-11-29 15:45:29 +09:00
2025-11-29 14:39:07 +09:00
2025-11-17 02:47:58 +09:00
2025-11-17 02:47:58 +09:00
2025-11-17 02:47:58 +09:00
2025-11-28 17:10:32 +09:00
2025-11-11 01:47:06 +09:00
2025-11-06 21:54:12 +09:00
2025-11-06 21:54:12 +09:00
2025-11-06 21:54:12 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 01:27:04 +09:00
2025-11-07 01:27:04 +09:00
2025-11-06 21:54:12 +09:00
2025-11-20 07:32:30 +09:00
2025-11-26 12:33:49 +09:00
2025-11-13 01:45:30 +09:00
2025-11-13 06:50:20 +09:00
2025-11-28 13:42:39 +09:00
2025-11-22 03:30:47 +09:00
2025-11-20 07:32:30 +09:00
2025-11-20 07:32:30 +09:00
2025-11-28 14:11:37 +09:00
2025-11-20 07:32:30 +09:00
2025-11-20 07:32:30 +09:00
2025-11-20 07:32:30 +09:00
2025-11-28 14:11:37 +09:00
2025-11-17 05:29:08 +09:00
2025-11-16 07:51:37 +09:00
2025-11-16 05:48:59 +09:00
2025-11-20 07:32:30 +09:00
2025-11-20 07:32:30 +09:00
2025-11-20 07:32:30 +09:00
2025-11-20 07:32:30 +09:00
2025-11-22 02:46:57 +09:00
2025-11-20 07:32:30 +09:00
2025-11-20 07:32:30 +09:00
2025-11-28 13:42:39 +09:00
2025-11-26 12:33:49 +09:00
2025-11-12 02:45:00 +09:00
2025-11-29 08:44:29 +09:00
2025-11-29 11:58:37 +09:00
2025-11-29 12:18:37 +09:00
2025-11-29 11:58:37 +09:00
2025-11-29 07:57:49 +09:00
2025-11-20 07:32:30 +09:00
2025-11-20 07:32:30 +09:00
2025-11-28 13:42:39 +09:00
2025-11-20 07:32:30 +09:00
2025-11-20 07:32:30 +09:00
2025-11-20 07:32:30 +09:00
2025-11-28 13:42:39 +09:00
2025-11-29 07:57:49 +09:00
2025-11-29 08:44:29 +09:00
2025-11-22 06:50:38 +09:00
2025-11-17 02:47:58 +09:00
2025-11-29 06:57:03 +09:00
2025-11-17 02:47:58 +09:00