Skip to content

feat(RequestBuffer): throttle prefetch hints based on MSHR pressure#21

Merged
linjuanZ merged 4 commits into
masterfrom
fix-mshrpf
Jul 2, 2026
Merged

feat(RequestBuffer): throttle prefetch hints based on MSHR pressure#21
linjuanZ merged 4 commits into
masterfrom
fix-mshrpf

Conversation

@ywlcode

@ywlcode ywlcode commented Jul 1, 2026

Copy link
Copy Markdown
Contributor

Summary

This PR adds MSHR-pressure-based throttling for A-channel prefetch hints in RequestBuffer.

When MSHR and s2/s3 pipeline occupancy approach the allocation limit, A-channel Hint requests are blocked
from:

  • flowing directly through RequestBuffer
  • allocating into RequestBuffer
  • issuing from existing RequestBuffer entries
  • already in the chosenQ

This prevents prefetch hints from consuming scarce MSHR resources when the L2 is close to saturation, leaving
more room for demand req.

Changes

  • Add s2/s3 pipeline status inputs to RequestBuffer.
  • Compute prefetch blocking based on valid MSHR entries plus valid s2/s3 pipeline requests.
  • Gate only A-channel demand requests under high MSHR pressure.

Performance

image

Comment thread src/main/scala/coupledL2/RequestBuffer.scala Outdated
Comment thread src/main/scala/coupledL2/RequestBuffer.scala Outdated
Comment thread src/main/scala/coupledL2/Slice.scala Outdated
@linjuanZ linjuanZ merged commit e1e73e9 into master Jul 2, 2026
3 checks passed
@ywlcode ywlcode deleted the fix-mshrpf branch July 5, 2026 13:33
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.

2 participants