Skip to content
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

make maxCpuBatchSize in GpuPartitioning configurable #11929

Open
wants to merge 2 commits into
base: branch-25.02
Choose a base branch
from

Conversation

binmahone
Copy link
Collaborator

This PR closes #11928

@binmahone binmahone requested review from abellina and revans2 and removed request for abellina January 7, 2025 09:44
@binmahone
Copy link
Collaborator Author

build

val SHUFFLE_PARTITIONING_MAX_CPU_BATCH_SIZE =
conf("spark.rapids.shuffle.partitioning.maxCpuBatchSize")
.doc("The maximum size of a sliced batch output to the CPU side " +
"when GPU partitioning shuffle data. This is used to limit the peak on-heap memory used " +
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So one thing I would say was that this wasn't introduced to limit peak memory per se, it was introduced because we cannot go above this number (#45). If we are going to make it configurable, we should perhaps add a max check so we don't go above it. The comment could reflect this constraint.

+1 on the internal comment from @winningsix

Copy link
Collaborator Author

@binmahone binmahone Jan 8, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"it was introduced because we cannot go above this number " yes I'm also aware of this, but it happends that we can take advantage of it to limit peak memory. I changed the wording from "This is used to " to "This can be used to" to be more precise.

@@ -1976,6 +1976,17 @@ val SHUFFLE_COMPRESSION_LZ4_CHUNK_SIZE = conf("spark.rapids.shuffle.compression.
.integerConf
.createWithDefault(20)

val SHUFFLE_PARTITIONING_MAX_CPU_BATCH_SIZE =
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

copyright needs to be updated.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed. I have a stupid question: why don't we replace all the license header for all files in a batch? It's troublesome to take care of the license header every time.

Signed-off-by: Hongbin Ma (Mahone) <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FEA] make maxCpuBatchSize in GpuPartitioning configurable
4 participants