Back To Blog

Why Decentralized GPU Networks Beat Hyperscalers for Burst Workloads

VOLT Team
 / Jul 3, 2026
Why Decentralized GPU Networks Beat Hyperscalers for Burst Workloads

There's a specific moment every ML engineer has dreads. In the early morning hours, after finishing the debugging of a data pipeline, you’re just about to run an experiment that requires 8 H100s for roughly 6 hours. After hopping on your cloud console, you click through the instance request, and see this message: 

"Your request for p5.48xlarge has been denied. 

Current quota: 0. 

Request quota increase."

The thing is, that quota increase takes 3-10 business days. So, your experiment waits. And waits. And waits. 

This is the burst workload problem in its most frustrating form, and it manifests at every scale: the team that needs to run 16 GPUs at 11 PM before a demo, the research lab that needs 64 GPUs for a one-time sweep, the inference pipeline that needs to scale from 4 to 32 GPUs in under 10 minutes when a product goes viral.

Hyperscalers designed their GPU clusters for sustained, predictable workloads. Burst GPU demand is high intensity, short duration, and time-sensitive. It exposes every architectural assumption that hyperscalers made. Decentralized GPU networks like VOLT, on the other hand, were built around the exact opposite assumptions: heterogeneous supply, market-clearing pricing, and zero pre-commitment.

What follows is a technical comparison, in which we go deep on scheduling architecture, quota systems, cold-start latency, interconnect tradeoffs, and the specific mechanics of why VOLT's market-clearing scheduler outperforms AWS and GCP for burst scenarios. We'll also be direct about when it doesn't.

The quota architecture problem

Before we get into any scheduling systems comparisons, it's worth taking a moment to fully grasp why hyperscaler quota systems exist at all. We might see them as just another arbitrary bureaucratic layer, when in fact they reflect a fundamental architectural choice that adversely impacts anyone who isn’t a highly liquid or well-funded enterprise operation. 

How hyperscaler quota systems work

AWS and GCP sell GPU compute primarily through what’s called a reservation-based allocation. AWS calls them reserved Instances (AWS), while GCP refers to them as Committed Use Discounts. Both lock in capacity at discounted rates in exchange for 1-3 year commitments. It’s a model that works quite well for these providers (and their shareholders) because it gives them revenue predictability. The model also works well for sustained workloads because it guarantees capacity.

The quota system is the enforcement mechanism for the on-demand tier. When you request on-demand GPU capacity, what you’re getting is:

  1. Quota check – Does your account have quota to launch this instance type in this region? (Default: 0 for p5/a3 instances.)
  2. Capacity check – Is physical hardware available in the selected availability zone?
  3. Network validation – Can the instances be placed on the same network fabric for NVLink/EFA connectivity?
  4. IAM and billing validation – Are your permissions and billing status correct?

Each of these is a synchronous gate. The quota check alone requires a service ticket workflow if you don't have quota. The path to running 8 H100s on AWS, starting from zero, typically looks like:

Request quota increase → Wait 3–10 business days → Quota approved →

Request instance → "Insufficient capacity" → Try different AZ →

Success (or wait again)

The capacity check is the second killer. Even with quota, AWS regularly returns InsufficientInstanceCapacity errors for H100 instances because the physical supply is allocated to Reserved Instance holders. The on-demand pool gets whatever's left.

GCP's quota path is structurally similar:

Request quota increase (Google Cloud Support ticket) →

Business case review → Wait 2–5 business days →

Quota approved → Submit instance request →

"ZONE_RESOURCE_POOL_EXHAUSTED" (frequently) →

Try another zone → Success

GCP does offer a "commitment-first" on-demand tier through its Resource Pools feature. The catch is that this requires committing to a minimum guaranteed utilization percentage, which defeats the purpose for burst workloads.

The structural problem

Quota systems are designed to protect reserved capacity holders. On-demand burst consumers are basically second-class citizens in an architecture designed and optimized for long-running tenants. And your AI startup or research team isn’t one of them. 

VOLT's market-clearing scheduler

VOLT's architecture flips the script entirely. Instead of managing a fixed pool of owned hardware, VOLT operates a marketplace where independent GPU providers submit capacity bids in real time. The scheduler's job is to match workload requirements against available supply, at a clear price, and then provision immediately.

The key architectural difference

Dimension

AWS/GCP

VOLT

Capacity pool

Fixed, owned hardware

Live bids from 5,000+ providers

Allocation unit

Reserved Instance / Committed Use

Per-job, per-hour

Quota mechanism

Account-level limits enforced by support tickets

None. Pay market rate

Capacity guarantee

Only with reservation (paid upfront)

Real-time availability, no commitment

Burst response

Quota check → capacity check → launch

Bid match → provision → launch

The market-clearing model means that when demand spikes — for, say, a major model release causes everyone to need GPUs at once — the market price rises, which attracts more providers to offer capacity. The hyperscaler model has no equivalent demand-response signal. It either has capacity or it does not.

Practical implication

On VOLT, there is no quota ticket to file. You request 8 H100s, the scheduler runs a matching pass against current bids, and either returns a provisioned cluster or tells you what's available and at what price. No 3-day wait.

Cold-start latency by the numbers

"Instant provisioning" is a common marketing claim. Here's what the actual cold-start latency profile looks like across providers, based on observable behavior in early 2026:

Hyperscaler Cold-Start Profile

AWS p5.48xlarge (8x H100 SXM):

  • Account with existing quota, AZ with capacity: 3-8 minutes (EC2 launch + EFA network initialization)
  • Account needing quota increase: 3-10 business days + 3-8 minutes
  • AZ with insufficient capacity: retry loop until capacity available (indefinite)
  • Spot instance: 30 seconds-3 minutes when available (may not actually be available at all)

GCP a3-highgpu-8g (8x H100 SXM):

  • Account with existing quota, zone with capacity: 4-10 minutes (GKE node provisioning adds overhead)
  • Account needing quota increase: 2-5 business days + 4-10 minutes
  • Zone resource pool exhausted: retry across zones (adds 10-30 minutes if automated)

The hidden latency

Even when instances launch in 5 minutes, that's wall-clock time for the instance to show as "running." CUDA initialization, driver loading, and your container pulling on a fresh instance adds another 3-10 minutes before your actual workload starts executing.

VOLT Cold-Start Profile

VOLT's provisioning is different because the hardware is already running. The big difference is that it just hasn’t been allocated to a workload (yet). GPU providers keep their machines online and connected to the network. In turn, VOLT's scheduler assigns jobs to available machines rather than spinning up new ones.

VOLT cold-start (8x H100, measured):

  • Scheduler matching: <30 seconds
  • SSH/container access: 60-120 seconds after match
  • CUDA initialization (already initialized on provider hardware): near-zero
  • Total time to first CUDA kernel: 90-150 seconds from API call

A case study in burst elasticity

In February 2026, an ML research team needed to rapidly scale a hyperparameter sweep after their initial experiment looked promising. They needed 8 H100s within 15 minutes, at 2 AM, on a Friday night: a classic scenario where hyperscaler on-demand capacity is tight and quota holders aren't releasing reservations.

Timeline on VOLT:

  • 02:07 AM: API call to VOLT scheduler for 8x H100
  • 02:07:28 AM: Scheduler returns matched cluster with IPs
  • 02:09:15 AM: SSH accessible, container running
  • 02:10:44 AM: First training step executing

The total elapsed time was 3 minutes, 44 seconds. As a result, the research team ran their sweep, got results by 8 AM, and published their findings the following week. An equivalent path on AWS (assuming they had quota) would have required 8-12 minutes of cold-start latency for the instances alone—and that’s assuming capacity was even available.

If you're running distributed training with DDP (DistributedDataParallel) or FSDP (Fully Sharded Data Parallel), the interconnect is where performance lives or dies. 

Let's be specific about the tradeoffs.

  • NVLink (intra-node) – NVLink connects GPUs within a single node at 600–900 GB/s bidirectional bandwidth (NVLink 4.0 on H100 SXM). It’s a property of the hardware not something you choose from the provider. An H100 SXM in an AWS p5 instance has the same NVLink topology as an H100 SXM in an VOLT cluster. If you're running 8-GPU single-node jobs, the interconnect is identical.
  • EFA (Elastic Fabric Adapter — AWS) – AWS's proprietary RDMA-capable network for multi-node GPU training. p5 instances run at 3,200 Gbps aggregate network bandwidth with EFA, enabling near-linear scaling for DDP across nodes. EFA is only available on p4d/p4de/p5 instance types and isn't portable outside AWS.
  • InfiniBand (VOLT, CoreWeave, dedicated providers) – High-performance providers on VOLT's marketplace frequently offer InfiniBand HDR/NDR connectivity at 200-400 Gbps per port, which is comparable to EFA for most distributed training workloads. Not all VOLT providers offer InfiniBand. When multi-node high-speed interconnect is required, the scheduler can filter to providers that offer it.
  • Standard Ethernet (VOLT, fallback) – For providers without InfiniBand, 25–100 Gbps Ethernet is typical. This is sufficient for many burst workloads like inference jobs, single-node training, and embarrassingly parallel tasks; but it will bottleneck large-scale multi-node training with heavy all-reduce operations.

When Interconnect is and isn't your AI infra bottleneck

For burst workloads specifically, the interconnect decision depends on the workload's communication intensity. 

Communication-heavy workloads (interconnect matters a lot):

  • Multi-node DDP with large models and frequent all-reduce (e.g., training a 70B model across 16 nodes)
  • FSDP with frequent gradient synchronization
  • Pipeline parallelism across nodes

For these workloads, the recommendation is use VOLT providers that explicitly advertise InfiniBand, or keep the job on a single 8-GPU node (NVLink handles intra-node communication efficiently, and many 7B–13B model training runs fit on a single H100 node).

Communication-light workloads (interconnect is not the bottleneck):

  • Hyperparameter sweeps (embarrassingly parallel across multiple independent single-GPU jobs)
  • Batch inference (no GPU-to-GPU communication required)
  • Fine-tuning runs that fit on a single node
  • Data preprocessing pipelines

The majority of burst workloads fall into the second category. Research teams running sweeps, inference teams scaling to meet traffic spikes, and data teams processing large datasets don't care about inter-node bandwidth. What they really care about is getting GPUs fast, at a low cost, and all without dealing with the cursed quota ticket.

Migrating existing DDP code

If you're running DDP training and want to run on VOLT, the migration is typically one-line. VOLT provisions standard Docker containers with CUDA, NCCL, and networking already configured. Your existing training code:

# Existing DDP setup — runs unchanged on VOLT

import torch.distributed as dist

dist.init_process_group(backend='nccl')

model = torch.nn.parallel.DistributedDataParallel(model)

The environment variables MASTER_ADDR, MASTER_PORT, WORLD_SIZE, and RANK are set by VOLT's cluster orchestration layer, the same way they'd be set by AWS's torch.distributed.launch wrapper. Your training script doesn't need to know it's running on VOLT.

For multi-node jobs, VOLT provides a cluster manifest with the IPs of all nodes, and NCCL discovers the topology automatically. InfiniBand-equipped providers have NCCL configured to use the IB transport automatically when available.

Burst Elasticity: The architecture that enables it

The burst scenario requires not only fast provisioning but also scaled-down termination too. In other words, you want to pay only for what you use. Here's how the two architectures handle elastic scaling. 

Hyperscaler burst architecture

AWS's canonical burst architecture uses Auto Scaling Groups with mixed instance policies:

# AWS burst scaling — conceptual

autoscaling_group = {

    "min_capacity": 2,  # always-on baseline

    "max_capacity": 32,

    "instance_refresh": {"strategy": "Rolling"},

    "mixed_instances_policy": {

        "spot_allocation_strategy": "capacity-optimized",

        "on_demand_base_capacity": 2,

        "on_demand_percentage_above_base": 20

    }

}

The problem here is that spot capacity during burst events is precisely when spot prices spike and availability drops. The instances you're counting on for burst capacity may be unavailable at the moment you need them. AWS's solution (Spot Fleet with diversified instance pools) helps but doesn't eliminate the exposure.

Additionally, scaling from 2 to 32 GPU instances in AWS takes 10-20 minutes end-to-end (launch + initialization). For a traffic spike that needs to be absorbed in under 5 minutes, this is too slow.

VOLT burst architecture

VOLT's architecture handles burst differently because capacity allocation is decoupled from physical provisioning. The hardware is running, and the scheduler just assigns it.

Scale-up path:

  1. Submit API request for additional nodes
  2. Scheduler runs matching pass (<30 seconds)
  3. New nodes appear in cluster (<2 minutes)
  4. PyTorch/JAX/TF workers attach to the enlarged process group

Scale-down path:

  1. Mark nodes as ready-to-release via API
  2. Graceful drain (your code's responsibility to checkpoint)
  3. Node returns to provider pool
  4. Billing stops immediately

For inference scaling specifically, VOLT's container deployment API makes this programmable:

import VOLT

client = VOLT.Client(api_key="...")

# Scale up inference cluster

cluster = client.clusters.scale(

    cluster_id="your-inference-cluster",

    gpu_count=32,

    gpu_type="h100-80gb"

)

print(f"Scaled to 32 GPUs in {cluster.provision_time_seconds}s")

# Scale back down after traffic normalizes

client.clusters.scale(cluster_id=cluster.id, gpu_count=4)

The provision_time_seconds for a scale-up of this type is typically 90-180 seconds. Compare that to 10-20 minutes for AWS Auto Scaling Group expansion.

When VOLT wins and when it doesn't

This comparison is only useful if it's honest about the cases where VOLT is the wrong choice.

Idea VOLT burst workloads

  • Unpredictable timing – You can't predict when your burst demand will occur, so you can't pre-purchase reserved capacity. VOLT's pay-as-you-go model is the right fit.
  • Job duration < 24 hours – Burst jobs are by definition short. VOLT's per-hour pricing is competitive; reserved pricing advantages only compound over months.
  • Single-node or embarrassingly parallel – Your workload fits on one 8-GPU node, or can be decomposed into independent single-GPU jobs. Interconnect is not your GPU pinch point.
  • Cost is the primary constraint – You need H100 capacity and the AWS price is genuinely prohibitive for your budget.
  • Time to provision is critical – You need capacity in under 5 minutes and AWS can't reliably hit that bar.

Ideal AWS/GCP burst workloads

  • You need multi-node, high-bandwidth interconnect – You're training a 65B+ model across 4+ nodes with heavy all-reduce, and you need EFA-class bandwidth guarantees. AWS p5 instances with EFA are the right call.
  • Your burst happens on a predictable schedule – If you know you need 32 GPUs every Friday for batch processing, you can reserve that capacity and get a 30-40% discount. The reservation model makes sense.
  • Your workload is tightly coupled to AWS services – Your training data lives in S3 and moves 50TB per run. The egress cost of moving to VOLT is higher than the GPU savings.
  • Your compliance requirements mandate AWS certifications – SOC 2 Type II with HIPAA on AWS is available today.
  • You need a managed training service – SageMaker's automatic hyperparameter tuning, experiment tracking, and deployment pipeline has no equivalent on VOLT. If you need managed MLOps infrastructure, AWS SageMaker is still the best option despite the cost premium.

Migrating your existing code

The most common migration concern is whether or not your training code has accumulated AWS-isms over two years. Here's what actually needs changing, and what doesn't.

What doesn't change

  • PyTorch, TensorFlow, JAX training code
  • NCCL-based DDP/FSDP patterns
  • Docker containers (VOLT runs standard Docker)
  • Experiment tracking (MLflow, W&B work on any cloud)
  • Checkpoint logic (just changes the destination path)

What needs updating

  • Data loading: change S3 paths to either (a) keep reading from S3 directly, paying egress, or (b) stage data to VOLT persistent volumes first
  • Monitoring: replace CloudWatch with Prometheus/Grafana (or W&B, which is already cloud-agnostic for most teams)
  • Job submission: replace SageMaker estimator.fit() with a Docker-based job manifest

Typical migration effort for a burst training job:

# Before (SageMaker)

estimator = PyTorch(

    entry_point='train.py',

    instance_type='ml.p4de.24xlarge',

    instance_count=2

)

estimator.fit({'training': 's3://my-bucket/data'})

# After (VOLT)

VOLT deploy \

  --gpu h100-80gb \

  --count 8 \

  --image my-registry/training-job:latest \

  --env DATA_PATH=s3://my-bucket/data \

  --env AWS_ACCESS_KEY_ID=$AWS_KEY

The training script itself is unchanged. The data still reads from S3 (you can add VOLT persistent volume staging as a second step). The migration is typically a half-day effort for a single job, not a multi-week project.

GPU architecture that truly scales with burst

Hyperscaler quota systems, reservation-based allocation, and 10-20 minute cold-start latency were designed for a world where compute was purchased months in advance. They're structurally misaligned with burst ML workloads; the kind of work that happens at 2 AM before a demo, or when a product goes unexpectedly viral, or when your research just got interesting and you need 8 GPUs now.

VOLT's market-clearing scheduler, sub-3-minute cold-start, and no-quota-required architecture creates a different category of compute access. A category designed around the assumption that demand is unpredictable and provisioning should, as a result, be instant.

For teams running DDP training across many nodes with InfiniBand requirements, AWS p5 with EFA remains the more reliable choice for multi-node interconnect. That's a real constraint for a specific workload category.

For everything else like sweeps, fine-tuning, inference scaling, batch processing, research iteration, the burst workload architecture that actually works is the one that gives you 8 H100s in 3 minutes at 2 AM, at $1.85/hr each.

Deploy your first burst cluster at VOLT.