-
Notifications
You must be signed in to change notification settings - Fork 179
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
Rework the pipeline: batch allocation + deterministic backoff #1769
Draft
wyfo
wants to merge
25
commits into
eclipse-zenoh:main
Choose a base branch
from
ZettaScaleLabs:feat/batch_allocation
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Changes from all commits
Commits
Show all changes
25 commits
Select commit
Hold shift + click to select a range
cc50515
Revert "Change default memory allocation policy and size of the queue…
wyfo 085b0e7
Revert "Reduce TX/RX buffers allocation (#1749)"
wyfo 64a78c7
feat: allocate tx batch on demand
wyfo 5a727ac
fix: lints
wyfo f4b0c8a
fix: try to pull before awaiting int the pull loop
wyfo 8b39e0c
chore: remove crossbeam dependency
wyfo 5babf83
fix: add missing break from pull loop in case of backoff
wyfo d9b7459
refactor: improve code
wyfo 039045c
fix: fix backoff semantic
wyfo e9a4307
replace random backoff with a deterministic batching mode
wyfo a6d569b
fix lints
wyfo d293e85
add missing drop to BatchPool
wyfo c87f99c
add more comments to explain backoff
wyfo 133dccd
fix typo
wyfo f894f63
add safety comments for refilling cell
wyfo 6965cde
remove dead code + add comments
wyfo 524cf7b
remove dead code
wyfo 88f07b0
do not push empty batches
wyfo c136ac7
add forgotten latest_pull set
wyfo adc456b
fix drop fragment
wyfo 35ff64c
add a test for deterministic batching
wyfo 3eb63db
backoff is now activated by pulling current batch
wyfo a3ab92d
rollback revert concerning rx
wyfo 2f960e2
fix typo
wyfo d28e955
fix batching test
wyfo File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've reverted the previous commit, so the numbers are back to the original ones. Throughputs of big messages was indeed very impacted by a smaller batch number, 130kmsg/s -> 50kmsg/s for 70kB messages.
@Mallets Do you think we should modify the numbers? for example increasing the hight priority to 2? In fact this PR does lazy allocation, and only keep one buffer in memory, so we could put any numbers, it would not change memory consumption at all, it just a matter of throughput/congestion.