-
Notifications
You must be signed in to change notification settings - Fork 153
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
[#1607] docs: Performance report with partial TPC-DS(SF=40000) queries #1650
Conversation
docs/benchmark_netty.md
Outdated
|
||
We can draw the following conclusions: | ||
|
||
1. At 1400 concurrency, Spark Native is already unable to successfully complete tasks, and at 5600 concurrency, Spark |
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.
Spark Native
-> vanilla spark
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.
Done.
7df03fa
to
7dacc18
Compare
docs/benchmark_netty.md
Outdated
2. The calculation formula for `Netty(SSD) Performance Improvement` is as follows: | ||
|
||
```` | ||
Netty(SSD) Performance Improvement = (Tasks Total Time - Tasks Total Time( Netty(SSD) )) / Tasks Total Time * 100% |
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.
Hmmm, I would call it Total task time reduction
.
BTW, for performance improvement, we usually use speedup to indicate that. The definition of speedup is s = Time of old / Time of new
, you can refer https://en.wikipedia.org/wiki/Speedup#Using_execution_times for how this is defined.
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 add a new column Netty(SSD) Speedup
. Also I keep the original column and rename it to Netty(SSD) Total Task Time Reduction
.
docs/benchmark_netty.md
Outdated
|
||
We can draw the following conclusions: | ||
|
||
1. At 1400 concurrency, Vanilla Spark is already unable to complete tasks successfully, and at 5600 concurrency, Spark |
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.
Nit: Vanilla Spark is already incapable of successfully completing tasks,
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.
Done.
BTW, thank you for the case report. I think it's quite compelling for users that Uniffle is capable of handling ten TBs of shuffle data and improves job stability and performance overall. |
Great work! I have a question that the peek write speed is too slow from my side under the so high concurrency. Because I do the similar test about rust based server. So is client backpressed? |
You mean your peak write speed is too slow when you test your rust based servers? I think the number of concurrent tasks is not enough in your case maybe? |
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.
Generally LGTM from my side. @zuston Please take another look.
Misunderstand me, I think write speed in your test report is slow. |
There could be many reasons, such as differences in data scale, SQL, hardware, shuffle server's configuration, etc. For example, if the memory is larger, the block size will be larger when flushing, resulting in less random IO, which may also have an impact even on SSDs. You can try testing again following the same method described in my document, as this comparison might help clarify the issue. Currently, I cannot tell the reason either. However, the current result is indeed as such. |
Yes. Just my a little question. Anyway, this report is good for community! |
### What changes were proposed in this pull request? Update `README.md`. ### Why are the changes needed? A follow-up PR for: #1650. Easier for users to find out the performance report. ### Does this PR introduce _any_ user-facing change? No. ### How was this patch tested? Unnecessary.
What changes were proposed in this pull request?
Add a performance report using TPC-DS.
Why are the changes needed?
For #1607.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
No need to be tested.