Free tools Windows power users keep installed
One-click scans. No signup required.
Short answer: NVIDIA Run:ai adds workload-aware scheduling and multi-tenant allocation policies to Kubernetes for AI and other compute-intensive jobs. Instead of treating every pod as an unrelated request, it can group related pods into a workload, evaluate that workload against project and department queues, satisfy deserved quota first, share unused capacity through fairshare rules, and apply defined recovery actions when resources are tight.
The result is a Kubernetes scheduling layer that understands distributed jobs, GPU requests, node pools, quotas, priorities and reclaim policies. It does not make every workload run immediately: a job can remain pending when its group cannot be placed, its GPU-memory request cannot be guaranteed, or its queue is no longer entitled to temporary over-quota capacity.
As an Amazon Associate I earn from qualifying purchases.
What the Run:ai Scheduler adds to Kubernetes
Kubernetes already has a scheduler that selects nodes for pods. Run:ai adds a policy and workload-management layer aimed at clusters where teams share expensive GPUs or other constrained compute resources. Its documentation describes scheduling in terms of workloads, pod groups, projects, departments, queues, quotas and fairshare rather than a simple first-come, first-served list of individual pods.
A workload may be one pod, such as a single inference server, or a coordinated set of pods for distributed training. Run:ai can represent the related pods as a pod group and, for more complex jobs, use subgroups. Group-level characteristics can include gang scheduling, a minimum number of replicas or workers, priority, preemptibility and topology requirements. These controls let an administrator express whether a job may start partially, which jobs may be displaced, and where the group should be placed. See the Run:ai scheduler concepts and principles documentation for the terminology used by the platform.
#1 Best Overall
- NVIDIA Volta GV100 Architecture — 4,608 CUDA Cores, 640 1st-Gen Tensor Cores delivering 14 TFLOPS FP32 and 112 TFLOPS deep learning performance for AI training, inference, HPC, and scientific computing workloads
- 32GB HBM2 ECC Memory — 900 GB/s Bandwidth — High-bandwidth memory on a 4096-bit bus with ECC error correction provides the memory capacity and throughput required for the largest AI models, simulations, and datasets
- PCIe 3.0 x16 Interface — 250W TDP — Standard PCIe Gen3 connectivity with passive cooling designed for enterprise rack server deployment in HPE ProLiant, Dell PowerEdge, and Supermicro platforms with adequate chassis airflow
- NVLink — Scale to 96GB Unified Memory — Connect two V100 GPUs via NVLink at 300 GB/s bi-directional bandwidth to scale GPU memory from 32GB to 96GB for larger AI training and HPC workloads
- Multi-Precision Computing — Supports FP64 (7 TFLOPS), FP32 (14 TFLOPS), FP16 (112 TFLOPS) and INT8 precision modes for flexible deployment across training, inference, and scientific simulation workloads
Why grouping matters for distributed jobs
A distributed training job may require several workers and a coordinator to run together. Starting only one worker can consume resources without producing useful progress. With gang scheduling, the scheduler treats the required set as a unit: it binds the required group when the placement is possible, or leaves the group pending and retries in a later scheduling cycle. A minimum-worker setting can express how much of a group must be available before it is useful to start.
What Run:ai does not guarantee
Grouping and policy do not override physical capacity. A workload still needs nodes with enough CPU, memory, GPU devices and, where requested, GPU memory. Temporary access to unused capacity is also conditional. A queue using resources above its deserved quota can lose them when another queue becomes entitled to them.
How a workload moves through the scheduler
The scheduling path is easiest to understand as a sequence. The exact implementation and defaults depend on the Run:ai release and deployment model, but the documented decision flow is as follows.
Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchPC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11- A workload controller creates pods. A submitted workload produces one or more Kubernetes pods. A single-pod job may need one node; distributed training or inference may create multiple coordinated pods.
- Related pods are grouped. Run:ai identifies pods belonging to the workload and represents them in a pod group. Subgroups can model nested or more complicated structures. Shared settings such as gang behavior, worker minimums, priority, preemptibility and topology can be applied at the group level.
- The queue context is evaluated. Projects and departments have queues for node pools. The scheduler considers the queue’s current state, the requested resources and the policies governing that project, department and node pool.
- Deserved quota is served first. The scheduler first attempts to allocate the resources that the project or department is entitled to receive under its quota. This entitlement is the queue’s deserved allocation, not a promise that every request will fit on the current nodes.
- Unused capacity can be shared. If capacity remains, queues may receive over-quota resources. Queue rank, weight and dynamic fairshare calculations influence which eligible queue receives that capacity.
- Pods are bound to nodes. Resource binding selects suitable nodes and assigns the pods. For a gang-scheduled group, the required group is bound together; if it cannot be placed as required, the group remains pending.
- Recovery actions are attempted when placement fails. The documented order is consolidation, resource rebalancing or reclaim across queues, and then preemption of eligible lower-priority, preemptible workloads within the same project queue.
This sequence explains why a pod can be pending even when a dashboard shows free resources: the free capacity may be on the wrong node pool, insufficient for the complete group, unavailable under the queue policy, or unable to satisfy a GPU-memory guarantee.
Quota, over-quota capacity and fairshare
Deserved quota
Quota is the allocation assigned to a project or department. Run:ai’s first allocation objective is to satisfy that deserved quota. Quota should therefore be read as an entitlement in the scheduler’s policy model, not as a reservation that overrides node capacity, placement constraints or a gang requirement.
Over-quota resources
Over-quota resources are currently unused resources temporarily assigned beyond a queue’s deserved allocation. They are useful for absorbing bursts, but they are reclaimable. When another queue becomes entitled to capacity, a workload consuming over-quota resources can be returned to pending or have resources rebalanced away from it, depending on policy.
Fairshare is dynamic
Fairshare distributes unused capacity among eligible queues using factors such as queue rank and weight. Its calculation changes with demand and with each queue’s recent allocation. A project that was able to use spare GPUs yesterday may receive fewer today if competing queues have increased demand or if its relative entitlement has changed.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Priority and fairness answer different questions. Workload priority governs precedence within a project. Across projects or departments, resource reclaim follows fairness between queues; a higher-priority workload in one project is not automatically entitled to evict every lower-priority workload in another project.
Node pools are part of the decision
Queues are associated with node pools, so allocation is not just one cluster-wide ranking. A queue may be entitled to capacity in one pool while a workload requests, or is constrained to, another. Pool-specific scarcity can keep a job pending even when the cluster appears to have spare resources elsewhere.
Gang scheduling, priority and preemption
Gang scheduling
Gang scheduling is appropriate when partial startup is useless or harmful. The scheduler waits for the required set of pods, or for the configured minimum, before binding them. This prevents a distributed job from occupying a few nodes indefinitely while waiting for the rest, but it can increase pending time when the cluster cannot provide a simultaneous placement.
Priority scope
Priority determines precedence among workloads in the scope defined by the project policy. It should not be treated as a universal cluster-wide ranking. Queue entitlement and fairshare govern cross-project or cross-department allocation decisions.
Preemptible and non-preemptible workloads
A workload marked preemptible can be considered for displacement when policy allows; a non-preemptible workload is protected from that action. Eligibility depends on workload policy and entitlement, and defaults can vary by release. The documented recovery order places preemption after consolidation and cross-queue resource rebalancing. It applies to eligible lower-priority preemptible workloads within the same project queue, not indiscriminately to every workload in the cluster.
What happens when resources do not fit
Run:ai documents three increasingly disruptive responses. Understanding the order helps administrators interpret scheduling events and choose policy settings.
1. Consolidation (bin packing)
Consolidation attempts to arrange existing workloads more efficiently so that the requested group can fit. This is a placement operation: it seeks a better packing of workloads onto nodes before taking resources away from another queue.
2. Rebalancing or reclaim across queues
If a queue is using temporary over-quota capacity while another queue has a stronger entitlement, the scheduler can rebalance resources between queues. This is the mechanism that makes over-quota sharing useful without turning it into permanent ownership.
3. Eligible preemption
Only after the earlier actions does the scheduler consider preempting lower-priority workloads that are eligible under the project’s policy. A non-preemptible job, or a job outside the applicable project scope, is not automatically a candidate.
GPU requests and GPU-memory guarantees
GPU scheduling depends on what the workload requests and on the fields supported by the installed Run:ai version. The Run:ai v2.19 Workload YAML Reference documents fields for fractional GPU allocation, GPU device counts, GPU limits and GPU memory. It states that a workload requesting GPU memory is not scheduled unless the system can guarantee the requested amount.
Do not copy a YAML example from one release into another without checking the matching reference. Field names, defaults and accepted combinations are versioned. Confirm whether the cluster is using Run:ai 2.19, another self-hosted release, or a SaaS-managed version before writing manifests or automation around these settings.
Rank #3
- Professional GPU with Blackwell Architecture in Compact Small Form Factor (SFF)
- Blackwell Architecture
- 24GB GDDR7 with PCIe 5.0 & Ray Tracing
- AI Workstation
Why a GPU request can remain pending
- The requested number of GPU devices is not available on any eligible node.
- The requested GPU-memory amount cannot be guaranteed, even if some device memory appears free.
- A fractional request conflicts with the device-sharing or allocation policy in effect.
- The complete gang or minimum-worker group cannot be placed at once.
- The workload is targeting a node or node pool whose remaining CPU, memory or GPU capacity is insufficient.
- The project is above quota and its temporary fairshare entitlement has decreased.
Diagnosing a pending workload
The Run:ai dashboard provides views of running and pending workloads, ready nodes and devices, allocation and queue information. The v2.18 dashboard analysis guidance recommends checking the workload’s CPU, CPU-memory and GPU requests and verifying that a node has enough free resources to host it.
- Open the workload’s details in the dashboard. Record its requested CPU, memory, GPU devices and GPU memory, along with its project, department and queue.
- Check the relevant node pool. Look for ready nodes and devices in the pool used by the queue, rather than relying on cluster-wide free totals.
- Compare the request with node capacity. A node must satisfy all requested resources simultaneously. A cluster can have enough aggregate memory while no single eligible node has enough.
- Inspect group requirements. For distributed work, verify the required replicas or workers, gang behavior and topology constraints. A partial fit may intentionally remain pending.
- Review quota and fairshare state. Determine whether the project is within deserved quota or consuming reclaimable over-quota capacity.
- Check placement targeting. A node selector, affinity rule or explicit node target can narrow placement and make otherwise free resources unusable.
- Reconcile the YAML with the installed release. GPU and GPU-memory fields should match the versioned workload reference used by the cluster.
These checks distinguish a capacity problem from a policy problem. Increasing cluster capacity will not fix a queue entitlement issue, and changing queue policy will not create a node with the required GPU memory.
Run:ai and Kubernetes’ default scheduler
Run:ai still schedules Kubernetes pods and binds them to Kubernetes nodes, but its decision model adds workload grouping and organization-level allocation policy. The practical differences to examine in an architecture review are:
| Decision area | Run:ai behavior described in the documentation | Question to verify for another scheduler or the cluster default |
|---|---|---|
| Workload unit | Related pods can be represented as pod groups and subgroups. | Does the alternative coordinate a complete distributed group or schedule pods independently? |
| Gang behavior | A required group can remain pending until it can be placed together. | Can the scheduler enforce a minimum number of workers before startup? |
| Multi-tenant allocation | Projects and departments use queues, deserved quota, rank, weight and fairshare. | Are entitlements calculated per project, department and node pool? |
| Temporary sharing | Unused capacity may be assigned over quota and later reclaimed. | Can temporary allocations be withdrawn when another queue is entitled? |
| Preemption scope | Recovery can end with eligible within-project preemption after consolidation and reclaim. | Which workloads may be displaced, and at what policy scope? |
| GPU handling | Versioned workload fields cover GPU devices, fractional allocation, limits and GPU memory. | Which GPU-sharing and memory-guarantee semantics are actually supported? |
| Operational visibility | The dashboard exposes pending and running workloads, ready devices, allocation and queues. | What equivalent queue and placement diagnostics are available? |
This table is a checklist for a technical comparison, not a claim that every alternative has or lacks a particular feature. Capabilities and licensing should be verified against the current documentation for the product being evaluated.
Where KAI Scheduler fits
NVIDIA describes KAI Scheduler as Kubernetes-native GPU scheduling technology based on Run:ai. The NVIDIA technical blog says KAI Scheduler is released under the Apache 2.0 license and continues to be delivered as part of the NVIDIA Run:ai platform.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Repair Windows errors before they cause bigger problems3Scan for outdated or missing drivers - takes under a minuteKAI should therefore be described as related open-source scheduler technology, not as a guarantee that every KAI release, configuration or capability is identical to the commercial Run:ai platform. Product names, packaging and feature boundaries can change; check current NVIDIA documentation when deciding whether a specific control-plane component, deployment model or support option applies to your cluster.
Operational decisions before deploying a policy
Define what must start together
Use workload grouping and gang requirements for jobs that cannot make progress with a partial replica set. Avoid imposing a larger minimum than the application needs, because an unnecessarily large group increases the amount of capacity that must be available simultaneously.
Separate protected work from burst work
Place steady, business-critical workloads in queues with clear deserved quotas and mark only suitable batch work as preemptible. Treat over-quota capacity as a burst mechanism, not as a guaranteed reservation.
Choose queue boundaries that match hardware
Because node pools participate in queue calculations, align pools with meaningful hardware classes and team entitlements. Otherwise, a project can appear to have capacity while the required GPU type or topology is unavailable in its assigned pool.
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Document version assumptions
Record the Run:ai release, SaaS or self-hosted edition, workload API version and GPU-sharing settings alongside manifests. Recheck these assumptions during upgrades, especially when using GPU-memory requests or fractional allocation.
Quick Recap
Key takeaways
- Run:ai extends Kubernetes scheduling with workload grouping and policy-aware allocation for AI and compute-intensive workloads.
- Projects and departments receive deserved quota first; unused capacity can be shared as reclaimable over-quota resources through dynamic fairshare.
- Priority is primarily a within-project concept. Cross-project allocation and reclaim are governed by queue fairness, not a single global priority list.
- The documented response to a placement problem is consolidation, then cross-queue rebalancing or reclaim, then eligible within-project preemption.
- Gang scheduling can keep a distributed workload pending until the required group or minimum worker count fits.
- GPU and GPU-memory requests directly affect schedulability, and YAML fields and defaults must be checked against the installed Run:ai version.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

