A DynamoGraphDeploymentRequest (DGDR) is Dynamo’s deploy-by-intent generator
for DynamoGraphDeployment (DGD)
resources. You describe what you want to run and your performance targets; the
profiler determines a configuration and produces the DGD that serves traffic.
For the full deployment mental model — including DGD, DCD, DGDR, recipes, strategy selection, model caching, planner setup, and common pitfalls — see the Deployment Overview.
Dynamo provides two Custom Resources for deploying inference graphs:
Use DGD directly when you have a hand-crafted configuration for a specific model/hardware combination. Most recipes are tuned DGD manifests. Use DGDR when you want Dynamo to generate the DGD for you.
For DGD deployment details, see Creating Deployments.
For the complete CRD spec, see the API Reference.
DGDR does not currently expose a features.kvRouter field. To configure
router mode or KV-aware routing details, use a direct DGD, a tuned recipe, or
overrides.dgd when you still want DGDR to generate the base deployment.
Use spec.overrides.dgd when the generated DynamoGraphDeployment needs a
field that DGDR does not expose directly. The value is a partial
nvidia.com/v1alpha1 DGD object that is merged into the profiler-generated
deployment after Dynamo selects a configuration.
For example, to inject an environment variable into every generated service:
Use spec.envs for variables that should apply to all generated services. To
target a single service, override that service’s envs entry instead:
overrides.profilingJob only customizes the profiling Job. Use
overrides.dgd for settings that must appear on the deployed worker pods.
When providing hardware configuration manually, use lowercase underscore format:
All supported values: gb200_sxm, b200_sxm, h200_sxm, h100_sxm,
h100_pcie, a100_sxm, a100_pcie, a30, l40s, l40, l4,
v100_sxm, v100_pcie, t4, mi200, mi300.
Not all SKUs are supported by the AIC profiler for rapid mode. See
AIC Support Matrix for details.
PCIe variants not yet supported by profiler. The CRD admits PCIe SKUs
(h100_pcie, a100_pcie, v100_pcie), but the profiler does not currently
ship training data for them. You can submit a DGDR with a PCIe value; the
operator will accept it but profiler-assisted sizing will fall back to
defaults. Profiler support for PCIe SKUs is tracked as an engineering
follow-up.
When you create a DGDR, it progresses through these phases:
The operator maintains these conditions on the DGDR status:
dgdr.nvidia.com/name and
dgdr.nvidia.com/namespace.dgdr.nvidia.com/name.pareto_analysis.py produces NaN for some configurations. Tracked as an
engineering follow-up. Workaround: re-run with a narrower sweep; narrow
sweeps bypass the NaN path in practice.