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

set concurrent tasks on batch size and GPU memory #12140

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

Conversation

revans2
Copy link
Collaborator

@revans2 revans2 commented Feb 14, 2025

This fixes #9160

but we probably need a follow on issue to disable the auto tuner from setting concurrent GPU tasks.

The new default for concurentGPUTasks is GPU memory / (target batch size * 4) with a minimum of 1 task and a maximum of 4 tasks. We may adjust the maximum if we get better results for larger GPUs.

@revans2
Copy link
Collaborator Author

revans2 commented Feb 14, 2025

I should add that I have not run any performance tests yet. We need to do that before checking this in.

@revans2
Copy link
Collaborator Author

revans2 commented Feb 14, 2025

build

val batchBytes = Option(batchStr)
.map(ConfHelper.byteFromString(_, ByteUnit.BYTE))
.getOrElse(RapidsConf.GPU_BATCH_SIZE_BYTES.defaultValue)
math.max(1, math.min(4, memory / (4 * batchBytes))).toInt
Copy link
Collaborator

@winningsix winningsix Feb 17, 2025

Choose a reason for hiding this comment

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

Should we keep consistent with auto-tooler (4 -> 8) or just remove the suggestions logic there since it's calculated by batch size and GPU memory already?

In auto-tooler, it uses gpuMemPerTaskMB (used 7500 MB. ~7.5GB per task) and total memory to calculate the concurrent GPU task config.

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] Set concurrentGpuTasks in the plugin on startup based on available GPU memory
3 participants