-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DCache does not block Acquire/ProbeAck by outstanding Release #2832
Conversation
Paging all this back in, I think this PR will have a significant impact on our memory-latency benchmarks.
Unless I'm missing something, we should just undo the change to As for the second change, I see a few options:
In the interest of forward progress, I'll suggest backing out the Of course, I'm open to alternate suggestions, and if it appears the TL spec will actually change, it certainly would be nice to make this whole point moot. |
Is this scenario handled elsewhere? Issuing a cache miss (AcquireBlock) while the drop (Release) of the same clean line is pending. If yes, then I agree, I should not have put in the
Will do now. |
…comparison to eliminate most false positives
@ingallsj Hmm, I think you might be right about the Perhaps we stick with your change but add an address check--I think comparing the same set of bits between |
…ison to eliminate most false positives
…ddress comparison to improve timing
TileLink includes these message ordering rules:
Related issue: The Rocket/Bullet DCache relaxed this in #2696 to allow a ProbeAck or Acquire to overtake a Release, but not overtake a ReleaseData.
Type of change: bug report
Impact: functional change
Development Phase: implementation