prov/efa: Skip rx pkt refill under certain threshold #10594
+106
−1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Libfabric currently refill the rx pkt pool in every cq read when there are >0 pkts to post, which makes it have chance to post ibv_recv 1-by-1 if there is only 1 pkt to post per cq read. Such 1-by-1 post is less performant than having a batch post once.
This patch improves this strategy by introducing a threshold for the refilling. When the number of internal rx pkts to post is lower than this threshold, the refill will be skipped.
Also introduced FI_EFA_INTERNAL_RX_REFILL_THRESHOLD that allows tuning this parameter.