Repository navigation
Conversation
Signed-off-by: Dr. Stefan Schimanski <sschimanski@nvidia.com>
sttts
temporarily deployed
to
external_collaborator
October 28, 2026 19:02 — with
GitHub Actions
Inactive
sttts
temporarily deployed
to
external_collaborator
October 28, 2026 19:02 — with
GitHub Actions
Inactive
|
👋 Hi sttts! Thank you for contributing to Pranjulcr7/dynamo. Just a reminder: The 🚀 |
Signed-off-by: Dr. Stefan Schimanski <sschimanski@nvidia.com>
sttts
added a commit
to ai-dynamo/dynamo
that referenced
this pull request
Oct 28, 2026
…ulcr7#1] Signed-off-by: Dr. Stefan Schimanski <sschimanski@nvidia.com>
1 of 26 tasks
sttts
added a commit
to ai-dynamo/dynamo
that referenced
this pull request
Oct 28, 2026
…ulcr7#1] Signed-off-by: Dr. Stefan Schimanski <sschimanski@nvidia.com>
sttts
added a commit
to ai-dynamo/dynamo
that referenced
this pull request
Oct 28, 2026
…ulcr7#1] Signed-off-by: Dr. Stefan Schimanski <sschimanski@nvidia.com>
Signed-off-by: Dr. Stefan Schimanski <sschimanski@nvidia.com>
sttts
marked this pull request as draft
October 28, 2026 22:05
sttts
added a commit
to ai-dynamo/dynamo
that referenced
this pull request
Oct 28, 2026
Signed-off-by: Dr. Stefan Schimanski <sschimanski@nvidia.com>
sttts
added a commit
to ai-dynamo/dynamo
that referenced
this pull request
Oct 29, 2026
…ulcr7#1] Signed-off-by: Dr. Stefan Schimanski <sschimanski@nvidia.com>
sttts
added a commit
to ai-dynamo/dynamo
that referenced
this pull request
Oct 29, 2026
Signed-off-by: Dr. Stefan Schimanski <sschimanski@nvidia.com>
sttts
added a commit
to ai-dynamo/dynamo
that referenced
this pull request
Oct 29, 2026
Signed-off-by: Dr. Stefan Schimanski <sschimanski@nvidia.com>
Signed-off-by: Dr. Stefan Schimanski <sschimanski@nvidia.com>
sttts
added a commit
to ai-dynamo/dynamo
that referenced
this pull request
Oct 29, 2026
…ulcr7#1] Signed-off-by: Dr. Stefan Schimanski <sschimanski@nvidia.com>
sttts
added a commit
to ai-dynamo/dynamo
that referenced
this pull request
Oct 29, 2026
Signed-off-by: Dr. Stefan Schimanski <sschimanski@nvidia.com>
15 of 31 tasks
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This is an on-top fix for ai-dynamo/dynamo#17262 and the heterogeneous-node review finding in discussion_r4403133517.
The source PR correctly discovers total same-GPU-type inventory, but used that total directly as the executable profiling budget. A cluster with 8-GPU and 4-GPU nodes of the same type therefore produced a budget of 12 even though one deployment shape cannot schedule 12 GPUs across those unequal nodes.
This change separates the two concepts without adding a Kubernetes API field:
GPUInfo.TotalGPUsremains diagnostic same-type inventory.GPUInfo.SelectedShapeGPUscounts only nodes matching the selected GPU type, GPUs per node, and VRAM per GPU.spec.hardware.totalGpususes selected-shape capacity, capped at 32 as before.totalGpusremains authoritative.Relates to ai-dynamo#17192.
API behavior
All hardware fields remain optional. No Kubernetes schema field is added.
With same-type 8-GPU and 4-GPU nodes, discovery records inventory 12 but defaults
totalGpusto 8.A caller may choose another shape by supplying its budget explicitly:
A shape override without an explicit budget is rejected because discovery cannot derive executable capacity for that different shape:
totalGpus: 64Generated artifacts
The v1beta1 CRD, Pydantic model, raw/full API references, and curated DGDR reference are regenerated or aligned with the Go API comments.
Validation
go test ./internal/gpu -count=18+4and4+8, proving the maximum selected shape is independent of node observation orderKUBEBUILDER_ASSETS=... go test ./internal/controller -count=1(73.511s)golangci-lint v2.15.0 run --timeout=5m ./...(0 issues)make manifests generate-pydantic generate-api-docspython3 docs/fern/scripts/gen_kubernetes_api.py --checkpython3 docs/fern/scripts/docs_lint.py(0 errors; existing advisory warnings only)git diff --check