Skip to content
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

Replay queue depth insufficient for RoCC accelerators #3653

Open
PhilippKaesgen opened this issue Jun 29, 2024 · 2 comments
Open

Replay queue depth insufficient for RoCC accelerators #3653

PhilippKaesgen opened this issue Jun 29, 2024 · 2 comments

Comments

@PhilippKaesgen
Copy link

Type of issue: other enhancement

Impact: no functional change

Development Phase: proposal

Other information

When a RoCC accelerator sends memory requests back-to-back, the two entries in the replay queue are not sufficient to handle a request every cycle.

val replayq = Module(new SimpleHellaCacheIFReplayQueue(2))

This can be simply fixed by changing the depth of the replayq to 3.

If the current behavior is a bug, please provide the steps to reproduce the problem:

The problem and proposed fix can be explored by adding an accelerator which simply loads the same address multiple times and back-to-back. After the initial miss, the L1D should be able to service the loads every cycle since the data is in the L1D. In the current state, the replayq will cause back-pressure in one in three clock cycles. After applying the suggested fix, it can handle a memory request every cycle.

What is the current behavior?

At the moment, the insufficient replayq depth will cause back pressure to the accelerator in one in three cycles.

What is the expected behavior?

Handling memory requests every cycle without back-pressure due to the insufficient replayq depth.

Please tell us about your environment:

What is the use case for changing the behavior?

RoCC accelerators accessing the L1D might gain up to 50% performance when sending memory requests back-to-back.

@jerryz123
Copy link
Contributor

Good observation. I'd be happy to approve a PR with the fix implemented (Please PR to the dev branch)

jerryz123 added a commit that referenced this issue Aug 21, 2024
increase depth of SimpleHellaCacheIFReplayQ #3653
@caizixian
Copy link

This can be closed now I think

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

No branches or pull requests

3 participants