-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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
Increase maxLocalExchangeBufferSize to 128MB #18212
Increase maxLocalExchangeBufferSize to 128MB #18212
Conversation
ca39f8c
to
812a42b
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.
lgtm % comment. Please also add doc for new config
plugin/trino-hive/src/test/java/io/trino/plugin/hive/BaseHiveConnectorTest.java
Show resolved
Hide resolved
there is test failure. Is it relevant? |
It's this issue #18217 |
core/trino-main/src/main/java/io/trino/execution/TaskManagerConfig.java
Outdated
Show resolved
Hide resolved
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.
lgtm % @raunaqmorarka comment. Maybe we can just increase local exchange buffer overall
This change will help increase the performance of writes when local exchange is used either because of partitioning the data or scaling the writers. Benchmarks for unpartitioned write: Before:ku Input Size: 6B rows Time: 4:46 mins Peak Mem: 59.9GB After: Input Size: 6B rows Time: 3:45 mins Peak Mem: 61.2GB Benchmarks for partitioned write: Before: Input Size: 3B rows (3 skewed partitions) Time: 2:33 mins Peak Mem: 89.8GB After: Input Size: 3B rows (3 skewed partitions) Time: 1:57 mins Peak Mem: 92.3GB
812a42b
to
77a5b90
Compare
I update the default value to 128MB as @raunaqmorarka mentioned. Also, here is a benchmark report for tpcds. |
This change will help increase the performance of writes when local exchange is used either due to partitioning the data or scaling the writers.
Benchmarks for unpartitioned write:
Before:ku
Input Size: 6B rows
Time: 4:46 mins
Peak Mem: 59.9GB
After:
Input Size: 6B rows
Time: 3:45 mins
Peak Mem: 61.2GB
Benchmarks for partitioned write:
Before:
Input Size: 3B rows (3 skewed partitions)
Time: 2:33 mins
Peak Mem: 89.8GB
After:
Input Size: 3B rows (3 skewed partitions)
Time: 1:57 mins
Peak Mem: 92.3GB
Description
Additional context and related issues
Release notes
( ) This is not user-visible or docs only and no release notes are required.
( ) Release notes are required, please propose a release note for me.
( ) Release notes are required, with the following suggested text: