Skip to content

GPU Queueing and FinOps by Scale

Last updated: 2026-05-24

GPU capacity becomes an MLOps control when training, replay, simulation, auto-labeling, map segmentation, foundation-model labeling, and incident analysis compete for the same accelerators. At S0, GPU cost is a run note. At S3, it is a shared product constraint. At S4, it is an assurance constraint because replay and incident retraining may be mandatory even when expensive. At S5, it is a platform service with quotas, priority lanes, observability, and unit economics.

The control objective is not simply "spend less." The objective is to allocate scarce compute to the work that creates reproducible models, reliable release evidence, and safety learning without allowing waste, hidden queues, or shadow clusters.


Workload Classes

WorkloadTypical GPU needPriority ruleFailure if unmanaged
Exploratory training1-8 GPUs for hours to daysBest-effort with budget capResearch consumes production capacity
Candidate training1-16 GPUs, reproducible containerScheduled lane with provenanceCandidate lacks rebuild evidence
Hyperparameter sweepsMany short jobsQuota and early-stop policySweep floods queue and delays release work
Offline auto-labelingBatch GPU inference over clips or mapsThroughput lane with cost per accepted labelLabel backlog grows or spend is invisible
Aggregated-map segmentationLarge batch inference over tilesSite/map release laneMap publication waits behind non-release jobs
Replay and simulationGPU/CPU mixed, often burstyRelease and incident prioritySafety evidence cannot be produced on time
Foundation-model labeling/evalGPU or API budgetPrompt/model/corpus cost tagsOffboard labeler spend hides inside research
Incident retraining or replayUrgent, evidence-preservingReserved S4 laneIncident response blocks on routine training
Platform eval serviceRepeated standardized evalsTenant quota with service SLOTeams bypass central eval because queue is slow

Autonomy differs from generic ML because replay and evidence production can outrank model training. A lower mAP training run can wait; an incident replay, rollback proof, or safety-case evidence pack may not.


Scale Ladder

MLOps scaleCapacity modelQueueing controlFinOps controlMain risk
S0 notebook researchLocal GPU or rented single GPUNone or manual calendarPer-run cost noteLosing provenance or accidentally using restricted data
S1 repeatable prototypeShared workstation or short cloud jobsSimple job list, owner tag, max durationProject budget and idle cleanupDemo jobs starve baseline rebuilds
S2 single-product productionScheduled runners or small GPU poolCandidate/export/eval lane, retry policyCost per training run, label batch, replay jobCandidate artifact is expensive but not reproducible
S3 fleet and multi-siteShared GPU pool across training, replay, labeling, mapsQueues by workload and site/ODD priorityChargeback/showback by site, model, map, label, replayOne site or sweep consumes all shared capacity
S4 regulated safety-criticalControlled training/evidence environmentReserved incident/replay/release lanes, waiver for preemptionCost per evidence pack, reserved assurance capacityCost pressure deletes or delays required evidence
S5 platform scaleMulti-tenant scheduler and eval platformQuotas, cohorts, borrowing, preemption, policy-as-codeUnit economics, utilization SLO, forecasting, tenant billingTeams create shadow GPU clusters outside governance

The migration trigger is contention plus consequence. If training jobs compete only with other research jobs, S1 discipline is enough. If they compete with release replay, map publication, customer-site adaptation, or incident response, the system is at least S3 operationally.


Queue Architecture

QueueWorkloadDefault priorityRequired metadata
research_best_effortExperiments, ablations, notebooksLowOwner, project, data sensitivity, max cost
baseline_rebuildS1/S2 reproducibility rebuildsMediumDataset snapshot, code commit, config, previous baseline
candidate_trainCandidate model trainingMedium-highRegistry target, dataset, label schema, evaluation plan
release_evalReplay, slice metrics, runtime package testsHighRelease packet ID, ODD cell, artifact set, rollback target
map_semantic_batchAggregated-map segmentation and QAHigh when map blocks releaseSource-map acceptance ID, tile set, semantic taxonomy, publication target
labeler_batchAuto-labeling, offboard labeler runsMediumLabeler registry ID, prompt pack, allowed use, cost center
incident_responseIncident replay, root cause, emergency retrainingHighestIncident ID, evidence hold, approver, retention policy
platform_maintenanceImage cache, evaluation service upkeep, health checksProtected backgroundPlatform owner, SLO, maintenance window

Preemption should be explicit. Research jobs can be preempted by release evaluation. Release evaluation can be delayed only by incident response or safety owner approval. Evidence-producing jobs should write resumable checkpoints and immutable logs before preemption is allowed.


Scheduler Choices

Scheduler patternStrengthsWeaknessesBest fit
Manual cloud rentalFast start, minimal platform workWeak quotas, weak provenance, manual cleanupS0-S1
GitHub Actions/self-hosted GPU runnerSimple CI integrationPoor for long jobs and multi-tenant GPU schedulingS1-S2 export/smoke tests
Kubernetes Jobs + device pluginCommon cloud-native primitive, integrates with containers and quotasNative GPU scheduling is coarse; needs queue layer for fairnessS2-S3 product jobs
Kubernetes + KueueQuotas, cohorts, borrowing, batch admission controlMore platform surface areaS3-S5 shared batch workloads
Kubeflow Training OperatorML-specific distributed job CRDsPlatform complexity and version lifecycleS2-S5 distributed training
RayFlexible distributed Python, actors/tasks, autoscalingRequires resource hygiene and cluster opsS2-S5 training, simulation, evaluation
SlurmMature HPC scheduling, GPU GRES, fair-shareLess cloud-native; integration work for MLOps metadataOn-prem S3-S5 GPU clusters
Managed ML platformFastest governance integrationCost, vendor coupling, custom metadata limitsS2-S4 when cloud fit is acceptable

Choose the scheduler based on workload shape and governance needs. Kubernetes is natural when the backend is already Kubernetes-native. Slurm is natural for on-prem HPC-style clusters. Ray is useful when distributed Python simulation, data processing, or training dominates. Managed platforms are useful when the team needs registry, tracking, and policy faster than it can build them.


FinOps Unit Economics

Unit metricWhat it includesWhy it matters
Cost per training runGPU time, CPU preprocessing, storage reads/writes, egress, failed retriesPrevents "cheap" experiments from hiding retries and data movement
Cost per accepted labelAuto-label GPU/API cost, reviewer time, QA rework, rejected candidatesMeasures labeler efficiency, not just label volume
Cost per replay hourSimulation/replay GPU/CPU time, scenario setup, storage, video/log artifactsShows whether release evidence is becoming the bottleneck
Cost per released modelAll training, eval, replay, packaging, and rollback proof for one releaseConnects spend to shipped value
Cost per released mapMap construction, cleaning, segmentation, QA, publication, rollback bundleMakes semantic-map publication economics visible
Cost per ODD-cell approvalLocal holdout, replay, shadow/canary analysis, delayed labels, signoffPrevents one site from hiding another site's evidence cost
Cost per safety evidence packIncident/replay/labels/monitor logs retained under evidence holdSeparates required assurance spend from waste
Platform cost per tenantShared services, scheduler, image cache, eval service, registry, observabilityDetects platform bypass pressure and unfair allocation

A metric is only useful if its denominator is stable. "GPU spend this month" is not enough. "Cost per accepted FOD label at Airport A" or "cost per release-replay hour for ODD cell X" supports engineering decisions.


Required Job Metadata

FieldReason
Owner, team, cost centerAllocation and incident follow-up
Workload classQueue routing and priority
Site/ODD cellSite-sliced cost and release evidence
Data access scopePrevents cross-tenant or privacy violations
Source commit and container digestReproducibility and supply-chain evidence
Dataset/map/calibration/taxonomy IDsDownstream lineage and compatibility
Labeler/prompt/evaluator IDsOffboard labeler governance
GPU type/count and expected durationScheduling and capacity planning
Max cost and timeoutPrevents runaway jobs
Output artifact IDsRegistry, catalog, release packet, evidence pack
Preemption policyDefines whether a job can be stopped for release/incident work
Retention policyControls logs, checkpoints, traces, and evidence artifacts

At S2+, jobs that lack owner, data scope, code/container identity, and output target should not run on shared release-capable infrastructure. At S4+, missing metadata should fail closed.


Capacity Planning

SignalMeaningAction
Queue wait time > training timeCapacity or priority policy is wrongAdd capacity, reduce sweeps, or split queues
GPU utilization < 30% on shared poolWaste or bad job packingImprove batching, image cache, right-size requests, idle cleanup
GPU memory OOM retries highJobs under-specify memory or use wrong GPU typeAdd memory class, admission checks, profile templates
Release replay delayed by research jobsPriority policy is unsafeReserve release/evidence lane
Incident replay waits for capacityS4 assurance gapReserve incident lane or cloud burst contract
Spot/preemptible failures erase workCheckpointing and preemption policy are weakAdd resumable jobs and non-preemptible evidence lanes
One site dominates spendLocal drift or budget policy issueReview site/ODD unit costs and active-learning yield
Image pull/setup dominates runtimeCache and base image strategy are weakPre-pull images, shared base images, artifact cache

Capacity plans should include cloud burst, on-prem reservations, and fallback modes. The team should know which workloads can wait, which can preempt, which can use spot capacity, and which require trusted non-preemptible workers.


Safety and Evidence Policy

PolicyS2-S3S4-S5
Research preemptionAllowed when release work waitsAllowed by policy; audit if it affects evidence
Release replay laneHigh priorityReserved capacity with evidence retention
Incident response laneManual overrideReserved and tested
Spot/preemptible GPUsGood for sweeps and non-critical trainingNot for evidence-locked release jobs unless checkpoint and approval exist
Logs/checkpointsRetain for candidate reviewImmutable retention for safety-case window
Trusted workersRequired for promoted artifactsRequired with attestation and restricted access
Cost exceptionsRelease owner approvalSafety owner or incident commander approval

Cost optimization must not delete evidence, skip replay, or starve incident response. The scorecard should distinguish waste reduction from assurance reduction.


Monitoring and Scorecards

MetricS0-S1S2-S3S4-S5
Queue wait timeManual noteBy workload class and ownerSLO by release/incident/eval lane
GPU utilizationManual nvidia-smiDCGM/exporter or cloud metricsPlatform utilization SLO and anomaly review
Failure/retry rateManual rerun countBy image, dataset, GPU type, workloadRelease blocker if evidence job fails reproducibility
Cost allocationRun noteOwner/site/model/map/label/replay tagsChargeback/showback, tenant allocation, forecast
Preemption impactNot trackedCount interrupted jobs and lost workAudit release/incident preemption decisions
Cache efficiencyNot trackedImage and dataset cache hit ratePlatform SLO
Unit economicsCost per runCost per label, replay hour, candidate modelCost per release, ODD cell, safety evidence pack
Bypass rateNot applicableManual exceptionsPlatform policy exception metric

The platform team owns the measurement system at S5, but product teams own whether a GPU job creates valid release evidence. A green scheduler dashboard cannot compensate for a training run that lacks data lineage or evaluation scope.


Failure Modes

Failure modeConsequenceControl
GPU spend optimized globallySafety replay or incident work starvesReserved release/incident lanes and workload priorities
No cost attributionTeams cannot explain expensive models or labelsMandatory owner/site/artifact tags
One queue for all jobsResearch, replay, labeling, and incidents block each otherSeparate queues and priority policy
Spot-only evidence jobsPreemption erases release evidenceNon-preemptible release lane or robust checkpointing
Utilization target too highNo slack for urgent incident workReserved assurance capacity
Utilization target too lowExpensive idle clusterForecasting, autoscaling, and idle cleanup
Shadow GPU clusterTeams bypass provenance and policyPlatform SLOs, self-service templates, and policy gates at registry/eval
Scheduler metadata not linked to registryCost data cannot explain releasesJob IDs written into dataset, model, map, and release records
Cost pressure deletes logsSafety case cannot be reconstructedRetention policy and evidence holds

  • mlops-scale-research-scope.md - MLOps maturity ladder and GPU FinOps scope.
  • mlops-reference-architectures-by-scale.md - platform architecture and centralization triggers.
  • mlops-scorecards-and-kpis-by-scale.md - cost, platform, and release-blocking metrics.
  • platform-sre-reliability-by-scale.md - platform SLOs, incident lanes, reserved capacity, restore evidence, and bypass controls.
  • site-sliced-release-evidence-by-scale.md - ODD-cell release evidence and local holdouts.
  • data-flywheel-airside.md - auto-labeling, active learning, retraining, and scenario mining workloads.
  • ../data-platform/cloud-backend-infrastructure.md - Kubernetes backend, processing jobs, and cost model.
  • ../../20-av-platform/compute/training-infrastructure.md - training infrastructure, containers, and pipeline orchestration.
  • ../data-platform/replay-scenario-mining-ops.md - replay scenarios and suite-management cost.
  • model-governance-release-evidence.md - model registry and release evidence.

Sources

Public research notes collected from public sources.