live wire
AI · Red Hat documents usage-based admission fair sharing for Kueue 1.4 on OpenShiftRed Hat DeveloperAI: Red Hat maps governed firewall changes from ServiceNow through Ansible and two human approval gatesRed Hat DeveloperCLUSTER MGMT · ACM 2.17 makes Submariner 0.24 GA with Important-rated fixesRed Hat ErrataPLATFORM · Red Hat makes on-premises Lightspeed recommendations GA for Satellite 6.18Red Hat ErrataSECURITY · Red Hat Hardened Images updates Tomcat 10 for nine authentication, access-control and DoS flawsRed Hat ErrataAI · Open Data Hub 3.6.0 EA1 bundles Trainer, MLflow and llm-d componentsOpen Data HubAI · Speculators 0.6.0 adds P-EAGLE parallel drafting for vLLM speculative decodingRed Hat DeveloperSECURITY · OpenShift 4.17.57 fixes seven Go and TLS CVEs in an Important-rated updateRed Hat ErrataAI · Red Hat benchmarks local LLM guardrails with EvalHub, exposing regex accuracy and latency trade-offsRed Hat DeveloperAI · Red Hat maps silent tool-call failures across agentic pipelinesRed HatAPI · Kuadrant 1.5.3 adds GRPCRoute policies and developer-portal API-key workflowsKuadrantAI · (Aug 25) IBM releases Apache-2.0 Granite 4.2 reasoning models in 3B, 8B and 30B sizesIBM ResearchJAVA · Red Hat build of Quarkus 3.33.3.SP1 fixes 13 CVEs in an Important-rated updateRed Hat errataAI · vLLM moves Kimi K2 RL weight sync across 384 H100s in 7.53 seconds (Aug 22)vLLMAI · Red Hat documents usage-based admission fair sharing for Kueue 1.4 on OpenShiftRed Hat DeveloperAI: Red Hat maps governed firewall changes from ServiceNow through Ansible and two human approval gatesRed Hat DeveloperCLUSTER MGMT · ACM 2.17 makes Submariner 0.24 GA with Important-rated fixesRed Hat ErrataPLATFORM · Red Hat makes on-premises Lightspeed recommendations GA for Satellite 6.18Red Hat ErrataSECURITY · Red Hat Hardened Images updates Tomcat 10 for nine authentication, access-control and DoS flawsRed Hat ErrataAI · Open Data Hub 3.6.0 EA1 bundles Trainer, MLflow and llm-d componentsOpen Data HubAI · Speculators 0.6.0 adds P-EAGLE parallel drafting for vLLM speculative decodingRed Hat DeveloperSECURITY · OpenShift 4.17.57 fixes seven Go and TLS CVEs in an Important-rated updateRed Hat ErrataAI · Red Hat benchmarks local LLM guardrails with EvalHub, exposing regex accuracy and latency trade-offsRed Hat DeveloperAI · Red Hat maps silent tool-call failures across agentic pipelinesRed HatAPI · Kuadrant 1.5.3 adds GRPCRoute policies and developer-portal API-key workflowsKuadrantAI · (Aug 25) IBM releases Apache-2.0 Granite 4.2 reasoning models in 3B, 8B and 30B sizesIBM ResearchJAVA · Red Hat build of Quarkus 3.33.3.SP1 fixes 13 CVEs in an Important-rated updateRed Hat errataAI · vLLM moves Kimi K2 RL weight sync across 384 H100s in 7.53 seconds (Aug 22)vLLM
upstreambeat.ai
guideAI

GPU-pruner uses hardware telemetry to reclaim idle Kubernetes GPUs

A Red Hat Developer walkthrough shows how to identify low-use GPU workloads with DCGM and Prometheus, warn owners, and reversibly scale parent resources to zero.

GPU telemetry flows through checks before a workload is warned, spared, or scaled to zero.
AI-generated illustration
By The News Desk· Aug 31, 2026the quick take — two AI hosts, this story only

Platform teams can see a Kubernetes pod holding a GPU, but that does not tell them whether the accelerator is doing useful work. A new Red Hat Developer walkthrough presents GPU-pruner as a hardware-aware alternative to idle cullers that rely on browser sessions, request traffic or pod age.

What the tool changes

GPU-pruner queries NVIDIA Data Center GPU Manager metrics through Prometheus. It watches DCGM_FI_PROF_GR_ENGINE_ACTIVE and DCGM_FI_DEV_GPU_UTIL, treating a workload as idle when peak engine activity stays below a configured threshold across an observation window that defaults to 35 minutes.

Rather than delete an idle pod, the controller follows Kubernetes ownerReferences or KServe-specific labels to find the top-level object that manages it. It can then scale a Deployment, StatefulSet, LeaderWorkerSet, Kubeflow Notebook or KServe InferenceService to zero. The parent resource and its configuration remain in place, so an operator or user can scale the workload back up later.

The walkthrough also describes guardrails. GPU-pruner can begin in dry-run mode, notify a Slack channel before acting, wait through a grace period and exclude workloads that are newer than the lookback window. Those controls matter because model loading, compilation or interactive debugging can temporarily produce low GPU activity without making a workload disposable.

Where OpenShift teams need to be careful

The design depends on trustworthy telemetry labels. The article warns that Prometheus may replace the original workload namespace and pod labels with labels for the DCGM exporter target when honor_labels is disabled. In that configuration, the controller may fail to map a GPU metric back to the user workload. The supplied ServiceMonitor example enables honorLabels: true to preserve that mapping.

There are further limits. Namespace-to-Slack-owner mappings require manual secret management, unusual custom resources may not be recognized, and zero engine activity during a long startup can look like waste. The author also says the team has not yet deployed GPU-pruner into active production on its Red Hat OpenShift Container Platform cluster, even though the tool targets OpenShift AI resources including Kubeflow Notebooks and KServe InferenceServices.

A cautious deployment path

The practical starting point is observation, not automatic reclamation. The walkthrough recommends checking the DCGM ServiceMonitor, deploying the controller with --run-mode=dry-run, and reviewing its logs and dashboard before enabling scale-down.

Platform teams should validate which resource types the controller can touch, test label preservation, and choose an inactivity window that covers their slowest legitimate initialization path. Slack warnings and acknowledgements add a human checkpoint, but they should complement—not replace—workload-specific exclusions and a measured rollout.

GPU-pruner is useful because it asks a narrower question than a conventional notebook culler: not whether a session looks abandoned, but whether the allocated accelerator has actually been working. For shared OpenShift AI clusters, that distinction can turn idle capacity into schedulable capacity without discarding the workload definition.

Filed by The News Desk. Corrections: desk@upstreambeat.ai · Our standards →

comments · 0

    Comments are moderated before they appear. Your email is used once to confirm it is you — never shown, never sold. Corrections and questions get an answer from the desk when we have one.