Files
hakmem/CURRENT_TASK.md
2025-12-02 00:53:26 +09:00

1.6 KiB
Raw Blame History

HAKMEM 状況メモ (2025-12-XX 更新)

現在の状態

  • Mid MT 層を完全撤去コード・ビルド依存・free 早期分岐を削除し、Mid/Large は ACE+Pool の一本化。
  • Mid W_MAX を 2.0 に緩和し、3252KB Bridge クラス経路が確実に当たるよう調整。33KB 帯のセグフォは解消済み。
  • free ラッパーは Superslab/Tiny ガードを維持しつつ、Mid/L2/L25 へのルートを確実化Superslab 未登録 Tiny は無視、Mid/L2/L25 は分類+レジストリで捕捉)。
  • Mid/L2/L25 ラップ判定はデフォルト ONHAKMEM_WRAP_L2=0 / HAKMEM_WRAP_L25=0 で OFF。ネスト再帰のみブロック。

直近の成果

  • bench 再現: ./bench_mid_large_mt_hakmem 4 20000 1024 4 完走、ACE-FAIL スパムもなし。
  • Mid MT のビルド/初期化/依存をすべて除去、Makefile も整理。

利用のポイント

  • 33KB 帯の挙動確認は ACE/Pool のみで実施。断片化調整は HAKMEM_WMAX_MID(デフォルト 2.0)で行う。
  • Tiny ヘッダー誤分類防止: Superslab 登録必須チェックを free/fast-free で維持。
  • 旧 Mid MT が必要な場合は別ブランチ/過去コミットを参照(現行ブランチには存在しない)。

残タスク/提案

  1. docs/benchmarks/scripts の Mid MT 関連ドキュメント・スクリプトを整理/アーカイブ。
  2. W_MAX/Cap の軽量 A/B環境変数で OKでフットプリント vs ヒット率を再計測。
  3. core/box/front_gate_classifier.d, hakmem.d, mimalloc-bench の dirty 表示は必要に応じて無視/クリーン。