Files
hakmem/docs/analysis/PHASE5_E7_FROZEN_BOX_PRUNE_NEXT_INSTRUCTIONS.md
Moe Charm (CI) e48cbff4b9 Phase 5 Complete: E7 NO-GO confirmed + ChatGPT Pro questionnaire
Summary:
- E7 frozen box prune: -3.20% regression (NO-GO) with clean ENV
- Keep E5-2/E5-4 (NEUTRAL) + E6 (NO-GO) as research boxes
- Regression due to build differences (LTO/layout/alignment), not logic

Results:
- Winning boxes: E4-1 (+3.51%), E4-2 (+21.83%), E5-1 (+3.35%) → adopted
- Frozen boxes: E5-2, E5-4, E6, E7 → kept with ENV gates (doc as assets)
- Phase 5 cumulative progress: +6.43% on MIXED profile

Documentation updates:
- PHASE5_E7_FROZEN_BOX_PRUNE_AB_TEST_RESULTS.md: Final NO-GO record
- PHASE5_E7_FROZEN_BOX_PRUNE_NEXT_INSTRUCTIONS.md: E7 conclusion

Next phase planning:
- PHASE_ML2_CHATGPT_QUESTIONNAIRE_FASTLANE.md: Design consultation template
  - Candidates: dedup new boundaries, PGO/layout optimization feasibility

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2025-12-14 08:56:09 +09:00

1.3 KiB
Raw Blame History

Phase 5 E7: Frozen Box Prune結論: NO-GO / やらない)

Status2025-12-14

  • 結果: NO-GO(削除で -3%台 の回帰)
  • 結論: “diet凍結箱の削除” は採用しない(凍結箱は default OFF のまま コード保持
  • 詳細: docs/analysis/PHASE5_E7_FROZEN_BOX_PRUNE_AB_TEST_RESULTS.md

Whyなぜ “削る” は危ない?)

  • E7 は “削除前/削除後” の 別バイナリ比較になり、LTO/配置/インライン等の二次効果が支配する。
  • “コードを減らせば速い” は成立しない(むしろ配置が崩れて回帰し得る)。
  • bench_setenv_default() は export 済み ENV を上書きしないため、dirty ENV のまま測ると比較が壊れる。

Rules今後の運用

  • A/B は 同一バイナリで ENV トグル(研究箱は削除しない)。
  • Mixed ベンチは scripts/run_mixed_10_cleanenv.sh を使い、研究 knobs を明示 OFFENV 漏れ防止)。
  • “削る” をやるならまずは削除ではなく、cold/noinline へ退避して 同一バイナリ内で遠ざける境界1箇所・戻せる

References

  • 結果: docs/analysis/PHASE5_E7_FROZEN_BOX_PRUNE_AB_TEST_RESULTS.md
  • clean-env runner: scripts/run_mixed_10_cleanenv.sh