Skip to content

cpu: updateOnRead parameter in BTBTAGE and tage trace#821

Closed
CJ362ff wants to merge 1 commit intoxs-devfrom
tage-bdtrace
Closed

cpu: updateOnRead parameter in BTBTAGE and tage trace#821
CJ362ff wants to merge 1 commit intoxs-devfrom
tage-bdtrace

Conversation

@CJ362ff
Copy link
Copy Markdown
Contributor

@CJ362ff CJ362ff commented Apr 10, 2026

Change-Id: If83b35a3e892d1917831a175da275894768dda13

Summary by CodeRabbit

  • Bug Fixes
    • Modified branch predictor update-on-read parameter default behavior from enabled to disabled
    • Updated debug trace capture mechanism to use stored prediction snapshots instead of recomputed values

Change-Id: If83b35a3e892d1917831a175da275894768dda13
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Apr 10, 2026

Caution

Review failed

Pull request was closed or merged during review

📝 Walkthrough

Walkthrough

Two targeted modifications to the BTBTAGE branch predictor: the default value of the updateOnRead parameter is changed from True to False, and debug trace recording for prediction metadata is adjusted to use stored prediction snapshots instead of recomputed values.

Changes

Cohort / File(s) Summary
Parameter Configuration
src/cpu/pred/BranchPredictor.py
Changed BTBTAGE.updateOnRead parameter default from Param.Bool(True, ...) to Param.Bool(False, ...)
Prediction Metadata Tracing
src/cpu/pred/btb/btb_tage.cc
Modified debug trace capture in BTBTAGE::update to derive main_info and alt_info from stored prediction snapshot predMeta->preds[btb_entry.pc] instead of recomputed values

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Possibly related PRs

  • Restore/per table numways #798 — Modifies BTBTAGE update path and prediction metadata handling in btb_tage.cc with similar prediction info tracing adjustments
  • Microtage merage  #775 — Adjusts updateOnRead parameter and predictor metadata usage across BranchPredictor configuration and BTB/TAGE prediction tracking

Suggested labels

perf, align-kmhv3

Suggested reviewers

  • jensen-yan

Poem

🐰 A tuning here, a default there,
BTBTAGE's behavior with careful care,
From read-on-update to read-at-ease,
Metadata snapshots now capture with ease,
The predictor learns in a subtler way! ✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main changes: updating the updateOnRead parameter default in BTBTAGE and adjusting the tage trace logic to use stored prediction snapshots.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch tage-bdtrace
⚔️ Resolve merge conflicts
  • Resolve merge conflict in branch tage-bdtrace

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@CJ362ff CJ362ff closed this Apr 10, 2026
@CJ362ff CJ362ff deleted the tage-bdtrace branch April 10, 2026 01:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant