2025-12-14 08:56:09 +09:00
|
|
|
|
# Phase 5 E7: Frozen Box Prune(結論: NO-GO / やらない)
|
2025-12-14 08:11:20 +09:00
|
|
|
|
|
|
|
|
|
|
## Status(2025-12-14)
|
|
|
|
|
|
|
2025-12-14 08:56:09 +09:00
|
|
|
|
- 結果: **NO-GO**(削除で **-3%台** の回帰)
|
|
|
|
|
|
- 結論: “diet(凍結箱の削除)” は採用しない(凍結箱は default OFF のまま **コード保持**)
|
2025-12-14 08:11:20 +09:00
|
|
|
|
- 詳細: `docs/analysis/PHASE5_E7_FROZEN_BOX_PRUNE_AB_TEST_RESULTS.md`
|
2025-12-14 07:18:59 +09:00
|
|
|
|
|
2025-12-14 08:56:09 +09:00
|
|
|
|
## Why(なぜ “削る” は危ない?)
|
2025-12-14 07:18:59 +09:00
|
|
|
|
|
2025-12-14 08:56:09 +09:00
|
|
|
|
- E7 は “削除前/削除後” の **別バイナリ比較**になり、LTO/配置/インライン等の二次効果が支配する。
|
|
|
|
|
|
- “コードを減らせば速い” は成立しない(むしろ配置が崩れて回帰し得る)。
|
|
|
|
|
|
- `bench_setenv_default()` は export 済み ENV を上書きしないため、dirty ENV のまま測ると比較が壊れる。
|
2025-12-14 07:18:59 +09:00
|
|
|
|
|
2025-12-14 08:56:09 +09:00
|
|
|
|
## Rules(今後の運用)
|
2025-12-14 08:11:20 +09:00
|
|
|
|
|
2025-12-14 08:56:09 +09:00
|
|
|
|
- A/B は **同一バイナリ**で ENV トグル(研究箱は削除しない)。
|
|
|
|
|
|
- Mixed ベンチは `scripts/run_mixed_10_cleanenv.sh` を使い、研究 knobs を明示 OFF(ENV 漏れ防止)。
|
|
|
|
|
|
- “削る” をやるならまずは削除ではなく、`cold/noinline` へ退避して **同一バイナリ内**で遠ざける(境界1箇所・戻せる)。
|
2025-12-14 07:18:59 +09:00
|
|
|
|
|
2025-12-14 08:56:09 +09:00
|
|
|
|
## References
|
2025-12-14 07:18:59 +09:00
|
|
|
|
|
2025-12-14 08:56:09 +09:00
|
|
|
|
- 結果: `docs/analysis/PHASE5_E7_FROZEN_BOX_PRUNE_AB_TEST_RESULTS.md`
|
|
|
|
|
|
- clean-env runner: `scripts/run_mixed_10_cleanenv.sh`
|