-
Notifications
You must be signed in to change notification settings - Fork 599
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
test(stream): Test no_shuffle_backfill
vs arrangement_backfill
performance
#14593
Conversation
3f77d35
to
6e67b52
Compare
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.
The performance of arrangement backfill is superior to the no-shuffle one. What specific factors contribute to this improvement? Could it be the per-vnode Snapshot-read?
Not sure yet, have to see the flamegraph of the tests. Will do it later. But that's certainly one of the major differences. |
+1. Curious why it can happen. Please share the analysis result ❤️ |
Seems like it runs better, only in debug mode (PR pipeline runs in debug mode sadly...), and significantly worse in release mode. Investigating why. Recent tests on
no shuffle mv takes 3x more time in debug mode. In release mode however, the results are a lot more different:
And with 2x the number of records (2M), the results show a large discrepancy, where no shuffle backfill is better.
With 2M records, with 3cn rather than 1cn:
|
With 1cn, 8M records:
|
Sad... BTW,
As the log shows, the If yes, then the next question is: why the backfilling performance diffs so much. |
Slight improvement, before the change and after:
|
After adding prefetch as well:
Opening a PR with the optimizations. The reason why |
I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?
As per title. Just compare their e2e test runtimes.
Checklist
./risedev check
(or alias,./risedev c
)Documentation
Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.