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

bnxt_re/lib: Reduce the Doorbells during SRQ and CQ handling #1424

Merged
merged 2 commits into from
Feb 5, 2024

Conversation

selvintxavier
Copy link
Contributor

@selvintxavier selvintxavier commented Feb 2, 2024

Some optimizations in data path for Broadcom devices. This series implements some Doorbell moderation techniques to avoid some latency in data path and help to reduce the Doorbell HW FIFO congestion.

Currently library is ringing Doorbells for every SRQ buffer.
Optimize this path and ring DBs only during exit of
post send. This is similar to the post_recv implementation.

As an exception, ring the DBs before the SRQ arm DBs.
Also, bnxt_re_build_srqe always return a possitive value
and the return value is not used. So make it a void function.

Signed-off-by: Selvin Xavier <[email protected]>
Lib needs to ring CQ doorbell to update the consumer
index. Reducing the number of DBs can help in the round trip
latency time measured by the benchmark tools. This patch aims
to reduce the CQ DBs in the data path. This patch ring the doorbell
only once the CQ is half occupied. So for a queue of size n,
instead of n doorbells, we will ring only 2 doorbells. This is
improving the latency by more than 100ns.
To avoid the queue full condition, create the CQs of double the
size of what user has requested.

Signed-off-by: Selvin Xavier <[email protected]>
@rleon
Copy link
Member

rleon commented Feb 4, 2024

@selvintxavier when we merge PR, everything that is written there will be visible in commit history, including "Please review and apply
Thanks,
Selvin"

Thanks

@selvintxavier
Copy link
Contributor Author

@selvintxavier when we merge PR, everything that is written there will be visible in commit history, including "Please review and apply Thanks, Selvin"

Thanks

Thanks Leon. Will fix it today.

@rleon rleon merged commit 6c75a8c into linux-rdma:master Feb 5, 2024
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants