diff --git a/AGENTS.md b/AGENTS.md index 51196b92..50fef5b4 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -189,6 +189,11 @@ Do / Don’t(壊れやすいパターンの禁止) ※ 開発マシンと OS 環境は、基本的にセッションを通じて同一構成(同一ハードウェア・同一カーネル設定)を維持して運用しています。性能の変化は「コード差分」か「明示的に変更した ENV」の影響として扱い、マシン側の揺らぎで説明しない方針です。 +- Perf / ベンチ計測の原則 + - ホットパス(Tiny front / SmallObject v3/v4 / Pool / Superslab)に手を入れるときは、必ず **変更前と変更後で同じプロファイルのベンチと perf** を 1 本ずつ取ってから評価すること(「perf を見ずに最適化しない」)。 + - Mixed 16–1024B は `HAKMEM_PROFILE=MIXED_TINYV3_C7_SAFE`、mid/smallmid は `HAKMEM_PROFILE=C6_HEAVY_LEGACY_POOLV1` を基準とし、A/B は原則この 2 本で行う。 + - 新しい箱を追加したら、CURRENT_TASK.md / docs/analysis 配下に A/B の ops/s と主要 self% を必ずメモしてから次の箱に進む。 + - DSO 領域には触らない(Superslab OS Box のフェンス) - `core/box/ss_os_acquire_box.h` の `ss_os_madvise_guarded()` は **libc/libm/ld.so など DSO 領域を dladdr で検出したら即スキップ** します。 - DSO に対する madvise 試行は **バグ扱い**。`g_ss_madvise_disabled` / DSO-skip ログを必ず 1 回だけ出し、以降は触らない前提です。