Files
hakmem/docs/analysis/PHASE5_POST_E1_NEXT_INSTRUCTIONS.md

80 lines
2.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Phase 5: Post-E1 Baseline & Next Target次の指示書
## Status2025-12-14
- Phase 4 の勝ち箱は **E1ENV Snapshot**`MIXED_TINYV3_C7_SAFE` で default 化)
- E3-4ENV CTOR**NO-GO / freeze**
- Phase 5 の勝ち箱: **E4-1free wrapper snapshot**`MIXED_TINYV3_C7_SAFE` で default 化)
- Phase 5 の勝ち箱: **E4-2malloc wrapper snapshot**`MIXED_TINYV3_C7_SAFE` で default 化)
- 次は “形” ではなく **新 baseline** で perf を取り直し、self% ≥ 5% の芯を殴る
---
## Step 0: Baseline 固定Mixed
```sh
HAKMEM_PROFILE=MIXED_TINYV3_C7_SAFE ./bench_random_mixed_hakmem 20000000 400 1
```
注意:
- 以後の A/B はこのプロファイル(=E1 ONを基準にする
---
## Step 1: perf で “芯” を選ぶself% ≥ 5%
```sh
HAKMEM_PROFILE=MIXED_TINYV3_C7_SAFE perf record -F 99 -- \
./bench_random_mixed_hakmem 20000000 400 1
perf report --stdio --no-children
```
GO/NO-GO:
- self% が **5% 未満**の最適化は原則 NO-GOまず他を削る
---
## Step 2: 研究箱の候補を 1 つに絞るBox Theory
要件:
- L0 ENV gatedefault OFFを必ず用意戻せる
- 境界は 1 箇所(変換点を増やさない)
- 可視化はカウンタ 1 本まで(常時ログ禁止)
---
## Step 3: A/B で GO 判定Mixed
Mixed 10-run:
- GO: mean **+1.0% 以上**
- ±1%: NEUTRALfreeze
- -1% 以下: NO-GOfreeze
---
## Step 4: 健康診断
```sh
scripts/verify_health_profiles.sh
```
---
## Step 5: 昇格
- 勝ち箱だけを `core/bench_profile.h` のプリセットへ
- `docs/analysis/ENV_PROFILE_PRESETS.md` に結果rollback を追記
- `CURRENT_TASK.md` を更新
## Next
- E4-1 昇格: `docs/analysis/PHASE5_E4_1_FREE_WRAPPER_ENV_SNAPSHOT_NEXT_INSTRUCTIONS.md`
- E4-2 設計/実装: `docs/analysis/PHASE5_E4_2_MALLOC_WRAPPER_ENV_SNAPSHOT_NEXT_INSTRUCTIONS.md`
- E4 合算 A/B: `docs/analysis/PHASE5_E4_COMBINED_AB_TEST_NEXT_INSTRUCTIONS.md`
- E5 次の芯: `docs/analysis/PHASE5_E5_NEXT_INSTRUCTIONS.md`
- E5-1 昇格: `docs/analysis/PHASE5_E5_1_FREE_TINY_DIRECT_NEXT_INSTRUCTIONS.md`
- E5-4 次: `docs/analysis/PHASE5_E5_4_MALLOC_TINY_DIRECT_NEXT_INSTRUCTIONS.md`
- E6 次: `docs/analysis/PHASE5_E6_ENV_SNAPSHOT_SHAPE_NEXT_INSTRUCTIONS.md`
- E7 次: `docs/analysis/PHASE5_E7_FROZEN_BOX_PRUNE_NEXT_INSTRUCTIONS.md`
- E7 結果: `docs/analysis/PHASE5_E7_FROZEN_BOX_PRUNE_AB_TEST_RESULTS.md`