libxlio
libxlio copied to clipboard
issue: Don't update CQ consumer index
Description
We always create CQs that cannot overflow. Therefore, we can use flag IBV_CREATE_CQ_ATTR_IGNORE_OVERRUN and avoid updating dbrec. HW will ignore the consumer index and this will save a memory barrier per successful polling.
What
Don't update CQ consumer index. Create CQs with IBV_CREATE_CQ_ATTR_IGNORE_OVERRUN flag.
Why ?
Performance optimization.
Change type
What kind of change does this PR introduce?
- [ ] Bugfix
- [x] Feature
- [ ] Code style update
- [ ] Refactoring (no functional changes, no api changes)
- [ ] Build related changes
- [ ] CI related changes
- [ ] Documentation content changes
- [ ] Tests
- [ ] Other
Check list
- [ ] Code follows the style de facto guidelines of this project
- [ ] Comments have been inserted in hard to understand places
- [ ] Documentation has been updated (if necessary)
- [ ] Test has been added (if possible)