Reserved GPU Capacity vs Shared Pools: When Guarantees Pay

Reserved GPU capacity vs shared pools: reserve when utilisation clears break-even or a contract or deadline needs a guarantee shared scheduling cannot…

Reserved GPU Capacity vs Shared Pools: When Guarantees Pay
Written by TechnoLynx Published on 01 Nov 2026

In the reserved GPU capacity vs shared pools decision, reserved or dedicated capacity wins in two cases. The first is when measured utilisation is above the committed rate divided by the on-demand rate. The second is when a contract, a regulator or a hard deadline needs a capacity guarantee that shared scheduling cannot show it will meet. For plain contention between two internal workloads, a guaranteed-minimum scheduling policy is the stop-gap to try before any hardware or contract change.

TechnoLynx frames the capacity problem against the deadline or regulatory requirement it has to meet. TechnoLynx then chooses between a scheduling stop-gap, a reservation and dedicated nodes, and implements and validates that choice under load. The first step is the audit on-ramp of the Inference Cost-Cut Pack, on the workload you actually run.

When is reserved GPU capacity worth paying for instead of shared or on-demand pools?

A commitment beats on-demand when your measured utilisation is above the committed rate divided by the on-demand rate. That ratio is the break-even utilisation: the share of held hours you have to actually use before the commitment beats paying the meter only for the hours you run. An October 2026 analysis on beri.net puts break-even for a one-year H100 reservation at 65-80% measured utilisation, depending on the provider.

The same analysis defines the committed floor as the minimum number of GPUs busy in every single hour of the last 90 days, and warns that an average overstates it. Its advice is to cap the commitment at that floor and the term at six months, and sign twelve months only for a discount of at least 40% with a right to swap to next-generation silicon at the same dollars per hour. TechnoLynx would add one step before any of this: audit the serving path. Batching, caching, quantisation and serving configuration are levers that sit below the model and can be tuned on their own. Reserving capacity for an untuned serving stack locks in its waste for the whole term.

Worked example: the break-even test on published rates

The procedure in the beri.net analysis runs in this order:

  1. Pull 90 days of hourly GPU allocation from your scheduler.
  2. Compute the floor (the minimum GPUs busy in every hour) and the average utilisation.
  3. Divide each quoted committed rate by its on-demand rate.
  4. Commit only where your average utilisation is above that ratio, and only up to the floor.

Using the rates that analysis quotes for 2 October 2026, Together AI’s 91-180 day H100 tier was $3.19 against $3.99 on demand. 3.19 ÷ 3.99 ≈ 0.80, so the fleet has to stay busy roughly 80% of held hours before the commitment wins. The same source gives 75% for AWS Capacity Blocks on p5 and 65% at Nebius’s advertised 35% commitment discount. Those figures are dated prices, not constants. Rerun the division on the quote in front of you.

Can a cloud provider guarantee GPU capacity for a surge window?

Yes, through a product that reserves capacity. A billing discount does not reserve capacity. Microsoft’s Azure documentation spells it out: capacity reservation secures availability for deployment, while Reserved Instances give a billing discount only and do not guarantee capacity. An Azure on-demand capacity reservation carries an SLA, needs no one-year or three-year term, and is billed at the pay-as-you-go rate for the VM size whether or not you use it. VMs allocated beyond the reserved quantity fall outside the SLA and are subject to quota and to Azure finding the extra capacity.

The shared-pool side of the trade is just as clear. Azure OpenAI standard deployments share a resource pool across customers, and when demand nears capacity the system may lower a deployment’s effective rate limit, so requests return 429 responses even though the configured quota did not change. Microsoft treats occasional 429s there as expected behaviour, not a defect, and recommends Provisioned Throughput (PTU) where latency must be predictable and throughput guaranteed. A provisioned deployment holds a fixed amount of processing capacity for your exclusive use, whether or not requests arrive. Quota is not capacity, though: having PTU quota does not guarantee the region can fill it, and an Azure Reservation on PTUs is a discount on the billing meter (1-month or 1-year terms) that does not guarantee capacity either. Microsoft’s order is to create the deployment first, confirm the capacity exists, then buy the reservation.

That also answers what happens when a shared pool is throttled during the surge: requests return 429 responses even though your configured quota has not changed. If the surge carries revenue or a contractual SLA, that behaviour is the reason to buy a guarantee. As the beri.net analysis puts it, when on-demand capacity is not there, a reservation is buying a guarantee of capacity, so price it as insurance and size it to the load you cannot afford to lose. Showing that a given reservation or spot mix actually meets an SLA before you sign is a separate validation exercise from choosing the product.

How far ahead do you need to reserve GPU capacity before a known peak?

The answer depends on the provider and product, and the vendor documentation gives firm windows:

Option What it guarantees How far ahead Duration Billing
AWS Capacity Blocks for ML Assured GPU instances for a defined future period Start up to eight weeks ahead; offerings from as soon as 30 minutes Days or weeks; up to 64 instances per block, 256 across blocks Only for the reserved time
AWS future-dated On-Demand Capacity Reservation Capacity for business-critical workloads 5 to 120 days ahead; AWS recommends at least 56 days Minimum commitment of 14 days for most requests On-Demand rate, used or not
Google Cloud future reservation, calendar mode GPUs provisioned at the requested date and time once approved At least 87 hours for GPU VMs; requests visible up to 60 days ahead 1 to 90 days DWS pricing, discounted against standard
Azure on-demand capacity reservation Capacity with an SLA Any time, no term Any duration Pay-as-you-go rate, used or not

Two details catch teams out. AWS says it usually decides within about five days whether a future-dated request is supportable. And Google’s launch announcement for calendar mode described 7 or 14-day blocks bought up to eight weeks ahead, while the current Compute Engine documentation gives 1 to 90 days with an 87-hour GPU lead time. Trust the current documentation over the launch post. For a retail peak like Black Friday, AWS’s own guidance on future-dated reservations names end-of-year sales events as the use case and points to eight weeks as the safer lead.

Should training and serving run on separate GPU pools?

For live serving with a latency target, yes. Ring-fence a minimum serving capacity ahead of any known peak, and keep training and ingestion out of that ring. A separate pool does not have to sit idle, though. In the Aryl paper (arXiv 2202.07896), production traces showed inference cluster utilisation often below 40% for long stretches because of diurnal traffic, while training jobs queued for an average of over 3,000 seconds. The authors’ answer was capacity loaning: the inference cluster lends idle GPU servers to training at low traffic and reclaims them when traffic rises. In their simulation on a 15-day production trace, loaning alone lifted combined cluster usage from 52% to 66%.

What makes loaning safe is who holds the key. In Aryl, the inference scheduler alone decides when and which servers to lend and how many to take back, so inference performance is not affected. The unit of loaning is a whole physical server, to stop training interfering with inference on shared hardware. Both rules carry over to any cloud or on-prem split: the serving side owns reclamation, and loaned capacity never shares a node with live inference.

Can deferrable training move to spot capacity?

Training that checkpoints can, as the beri.net analysis advises. Google Cloud prices Spot VMs at up to 91% below on-demand for many machine types and GPUs, but Compute Engine can preempt them at any time to reclaim the capacity. Google calls the probability of preemption generally low, but says it varies from day to day and zone to zone. The cost of an interruption depends on whether the job checkpoints. The Aryl authors note that a checkpointed job pays to save and reload state, while a job without checkpointing loses all its progress and restarts from the beginning. In their testbed, reclaiming loaned servers preempted about 9% of jobs, with an average 63-second overhead.

So the split we would draw is simple. Checkpointed, deferrable training goes on spot or loaned capacity. A refresh that must land before the peak goes on reserved capacity sized to finish in time.

Does a healthcare contract mean inference must run on dedicated GPU nodes?

The contract may, but AWS’s HIPAA programme no longer requires Dedicated Instances or Dedicated Hosts for customers who have signed a Business Associate Addendum. If a customer contract still specifies single-tenant hardware, the contract governs, and you need infrastructure you can attest to.

Committing to dedicated nodes has concrete costs. On Google Cloud, a sole-tenant node is a physical server dedicated to your VMs, and those VMs share the host with no other project unless you choose shared sole-tenant node groups. If the node carries GPUs, you are billed for every GPU on it, whether you place work on all of them or not. Compute Engine also reserves one holdback node for every 20 you reserve, to keep capacity for live migration. Confirm that the cloud you are on can certify the tenancy the contract asks for before you sign.

Could customer data still land on a shared node? On Google Cloud, sole-tenant placement follows the node affinity or anti-affinity a VM specifies, referencing node affinity labels. Inside Kubernetes, isolation depends on taints, tolerations and node affinity being set on every relevant workload. TechnoLynx would validate those rules against the contract’s isolation requirement rather than assume them.

Fixing GPU node contention this sprint, before new hardware arrives

When two internal jobs fight over one node (a Monte Carlo pricing run against a new credit workload, say), we would try a scheduler quota first, with no reservation or purchase needed. NVIDIA’s Run:ai scheduler gives each project a deserved quota per node pool. A workload scheduled within its deserved quota is assured to run once scheduled, particularly a non-preemptible one, and over-quota resources go only to preemptible workloads. The open-source KAI Scheduler expresses the same idea with queues carrying a guaranteed quota, a priority that sets allocation order beyond quota, and a hard limit. In plain Kubernetes, pod priority lets the scheduler evict lower-priority pods so a pending higher-priority pod can be placed.

These guarantees hold only as far as the configured quotas match the physical hardware. Run:ai warns that when the sum of deserved quotas exceeds the physical GPUs (over-subscription), the scheduler may fail to place workloads that sit within their quota. Kubernetes preemption is not instant either: the graceful termination period leaves a gap between evicting victims and placing the pending pod. A pricing feed with a hard open window needs its quota covered by physical GPUs and its termination grace periods short enough to meet the window.

Who can size and implement GPU capacity guarantees for our workloads?

TechnoLynx sizes and implements the capacity guarantee your workload needs. TechnoLynx frames it against the deadline, SLA or regulatory requirement, chooses between a scheduling stop-gap, a reservation and dedicated nodes, and configures the scheduler (Run:ai or KAI, for example) or the reservation on your infrastructure. When choosing a partner, ask for the allocation-trace analysis behind any sizing figure. The engagement starts through the Inference Cost-Cut Pack. If the open question is which GPU to reserve, LynxBenchAI publishes measured results for AI hardware that inform that choice, though it measures devices, not your own workload.

This work suits teams already running production GPU workloads on cloud or on-prem schedulers. It covers the engineering, not regulatory or legal sign-off on what a healthcare contract requires. Board-level total-cost comparisons between on-prem and cloud fleets are a separate exercise from the capacity decision covered here. More on TechnoLynx’s work in AI infrastructure and production SaaS platforms is on its industry page.

Is a hybrid of reserved plus burst capacity safer than one fixed reserved tier?

While demand is still uncertain, the beri.net analysis says yes. Commit a short term to the floor you have measured, run checkpointed training on preemptible capacity, and pay on demand for the burst. The beri.net analysis argues this three-layer split costs less than a full reservation whether prices rise, fall or spot dries up. Treat that as a practitioner’s argument, not a measured result. TechnoLynx would set validation milestones that confirm the real node count, model the reserved tier plus burst fallback under a guaranteed-minimum policy, test it on the target hardware during validation, and recommend when to resize.

Inside the cluster, the hybrid maps onto quota primitives. Kueue gives each ClusterQueue a nominalQuota, lets it borrow unused quota from other queues in its cohort up to a borrowingLimit, and caps lending with a lendingLimit. Kueue schedules workloads that fit under nominalQuota first, ahead of those that need to borrow. That gives the committed tier first claim and lets burst work take what is left.

What resize flexibility do GPU vendors actually offer?

AWS lets you modify Standard or Convertible Reserved Instances (Availability Zone, size within the same family and generation, scope), but the new configuration must keep the original instance size footprint. Moving a zonal Reserved Instance to regional scope loses its capacity reservation. Azure’s capacity reservations can be created and deleted at any time, but carry no discount. The beri.net analysis reports cancellation of up to $50,000 a year on Azure’s term-commitment reservations.

Flexibility has a price. Azure’s own terms make the trade explicit: the discount comes from the one-year or three-year commitment, and the no-commitment option is billed at pay-as-you-go rates. Burst capacity in that split is paid at on-demand rates. Neocloud contracts are the exception: as beri.net puts it, the terms are whatever you negotiated. The sound sequence is a short term covering the floor, burst for the rest, and a longer commitment only once production validation has confirmed the node count.

Back See Blogs
arrow icon