Files
hakmem/docs/analysis/FINAL_PERF_STATUS_2025XX.md

32 lines
2.2 KiB
Markdown
Raw Normal View History

# FINAL_PERF_STATUS_2025XX
箱理論で進めた v1 系の最終スナップショット。ベスト構成と残差、次の大きなテーマを一枚にまとめる。
## ベスト構成(デフォルト想定)
- Tiny: `HAKMEM_TINY_HEAP_PROFILE=C7_SAFE`, `HAKMEM_TINY_HOTHEAP_V2=0`, `HAKMEM_TINY_STATS_BOX=1`, `HAKMEM_TINY_STATS_BATCH=0`, `HAKMEM_TINY_LARSON_FIX=1`
- Pool: `HAKMEM_POOL_V2_ENABLED=0`(回帰防止のため v1 を標準)
- HugePage/ヘッダ-light/実験系: すべて OFF研究箱扱い
## 性能一覧(リリースビルド、代表プロファイル)
- C7-only (ws=64, iters=20k): ≈40.6M ops/s
- mimic/system との差: mimalloc ≈112.9M, system ≈92.1M → HAKMEM は mimic の ~36%、system の ~44%
- Mixed 161024B (ws=256, iters=20k): ≈3839M ops/sv2 OFF, C7_SAFE
- mimalloc/system は未計測同条件だが C7-only 比率から推定し ~40% 前後
- mid/smallmid (bench_mid_large_mt_hakmem 1 1,000,000 400 1, v2 OFF): ≈27.428.4M ops/s
- mimalloc ≈54.2M → HAKMEM は ~50% 近辺
## 埋めた「大きな穴」
- Tiny front/route フラット化size→class→route→alloc/free を 1 LUT+switch に縮約)
- Warm Pool / Superslab OS stats で pf/sys の大穴を特定し、OS alloc/free はほぼゼロ化
- SS_OS_STATS/Cold Stats Box で Superslab⇔OS/Stats を可視化し、デフォルトは A/B で安全側
- C7 SAFE TinyHeap を標準に固定v2 は研究箱。Tiny v2 は完全ゲート付きでデフォルト OFF
- Pool v1/v2 ゲート追加:`HAKMEM_POOL_V2_ENABLED=0` を標準にし、回帰を即切り戻せるようにした
## ここから先v3 テーマ候補)
- TinyHeap v2 をゼロから設計C5C7 を統合する HotHeap、現在の実験 v2 とは別物)
- First-touch / header-light / HugePage の本格対応bench 専用から昇格させるか検証)
- mid/smallmid の pool 系さらなる軽量化 or 別フロント
- Tiny front 以外mid/largeでの route フラット化・命令数削減
備考: v2 系・ヘッダ light・HugePage はすべて「明示的に ENV を立てた研究モード」のまま据え置き。標準ベンチ/比較は上記ベスト構成で見る。***