A single high-end GPU fails maybe once every few thousand hours. Put two thousand of them in one training job for three weeks and the question stops being whether hardware dies and becomes how many times a day, and whether your run keeps moving when it does. That is the whole reason Amazon SageMaker HyperPod exists.
Part 18 handed you a managed endpoint from a deploy button. This part is the other end of the scale: a cluster of your own that you keep alive for weeks so a training run survives the failures that are certain to happen. Nobody reaches for this to fine-tune an 8B model on a weekend. You reach for it when a job spans many nodes for many days and a restart from scratch would cost real money.
What HyperPod is, and the problem it solves
SageMaker HyperPod is a managed service that provisions and runs a persistent cluster of accelerated instances for you, then keeps that cluster healthy while long jobs run on it. Persistent is the key word. A normal SageMaker training job spins up instances, runs, and tears them down. A HyperPod cluster stays up. You reserve a set of nodes, you keep a few spare nodes in the pool, and you launch job after job onto the same standing fleet. That standing fleet is what makes weeks-long runs survivable.
The problem it solves is scale-driven failure. On one node, a hardware fault is rare and you just restart. Across hundreds of nodes wired together for a single synchronous job, a fault somewhere in the fleet is not rare, it is expected, and one dead GPU stalls the entire run because every rank waits on every other. Without help, an operator notices hours later, swaps the node by hand, and restarts the job from the last checkpoint, losing everything computed since. HyperPod automates that whole loop. It watches the nodes, pulls a bad one, drops in a spare, and resumes, so a fault costs minutes instead of a morning.
Put it next to the two services you already know. Bedrock is serverless and you never see a node. JumpStart gives you one endpoint on one instance you babysit. HyperPod gives you a fleet, plus the machinery to keep that fleet alive under a job that cannot tolerate a restart. Different tool, different failure it is built to absorb.
Slurm or EKS, pick your orchestrator
A HyperPod cluster runs one of two orchestrators, and you choose at creation. Slurm is the scheduler most research and HPC teams already know: you submit a batch job with sbatch, it lands on allocated nodes, logs stream to a shared filesystem. Amazon EKS is managed Kubernetes: your training runs as pods, and HyperPod provides the resilient compute underneath the managed Kubernetes control plane. Both give you the same recovery behavior now. The health monitoring agent that auto-replaces nodes started on EKS clusters and was extended to Slurm clusters in September 2025, so resiliency is no longer a reason to prefer one over the other.
Pick Slurm if your team lives in HPC habits, wants a simple filesystem-and-sbatch flow, and is running mostly training. Pick EKS if you already run Kubernetes, want the same cluster to carry training and inference and other workloads side by side, and want to schedule with the Kubernetes tools your platform team already operates. My blunt take: if you have a Kubernetes platform team, use EKS and let training join the rest of the estate. If you do not, Slurm is less to learn and gets a run going faster.
| Dimension | Slurm orchestration | Amazon EKS orchestration |
|---|---|---|
| Mental model | HPC batch scheduler | Managed Kubernetes pods |
| Best for | Training-first research teams | Mixed training and inference estates |
| Node auto-recovery | Yes, agent extended Sept 2025 | Yes, original path |
| Learning curve | Lower if you know HPC | Lower if you know Kubernetes |
How the resiliency actually works
Three layers stack up here, and it helps to keep them separate. The first is deep health checks. When a node joins the cluster, HyperPod runs stress checks on the accelerators and the network fabric before the node is allowed to carry work, so a sick GPU is caught at the door instead of mid-run. The second is the background health monitoring agent. It runs passive checks the whole time a job is live, and when it sees a node degrade, it cordons that node, replaces it from the spare pool, and lets auto-resume restart the job from the most recent checkpoint. You lose the work since that checkpoint and nothing more.
The third layer is the newest and the most interesting. Checkpointless training, which AWS shipped in December 2025, does not restart the whole job when a rank dies. It reconstructs the failed rank in place, using peer-to-peer transfer of model weights and optimizer states from healthy accelerators, so forward progress continues without rewinding to a saved checkpoint. AWS reports this cuts recovery time from the usual 15 to 30 minutes down to under 2, an 80 to 93% reduction, and holds over 95% training goodput on clusters with thousands of accelerators. Goodput is the share of your paid GPU time that produces real training progress rather than waiting or redoing lost work. You can turn it on with no code changes through HyperPod recipes for models like Llama and GPT OSS.
Task governance and keeping the GPUs busy
A resilient cluster that sits half idle is just an expensive one. Task governance is the layer that shares the fleet across teams and jobs by rule instead of by whoever grabbed the nodes first. An administrator sets compute allocations per team or project and priority policies that decide what preempts what. When a high-priority job needs accelerators, HyperPod can scale a lower-priority training job down rather than killing it, freeing capacity, then hand the GPUs back when the urgent work clears. When nodes go idle, running jobs can expand to absorb them. The point is to keep utilization high on hardware that costs the same whether it computes or waits.
You see all of this through a preconfigured observability dashboard. HyperPod publishes cluster and task metrics to an Amazon Managed Prometheus workspace and renders them in an Amazon Managed Grafana dashboard, and it integrates with Amazon CloudWatch Container Insights for deeper cluster health. The governance metrics that matter day to day are simple counts: tasks running, pending, and preempted, plus average task runtime and wait time. If pending and wait time climb, your allocations are too tight or the fleet is too small. If preemptions spike, your priority policy is fighting itself.
Launch a run with HyperPod recipes
You do not have to write a distributed training stack from scratch. HyperPod recipes are prebuilt training and fine-tuning configs for common open models, including Llama, Mixtral, Mistral, and DeepSeek, tuned to run on a HyperPod cluster with sensible parallelism already set. A recipe names the model, the parallelism, the dataset location, and the number of nodes, and a launcher script submits it to your Slurm or EKS cluster. The example below launches a Llama pre-training recipe on a four-node Slurm cluster.
# get the recipe collection git clone https://github.com/aws/sagemaker-hyperpod-recipes.git cd sagemaker-hyperpod-recipes # launch a Llama pre-training recipe on a Slurm HyperPod cluster export CLUSTER=slurm export INSTANCE=ml.p5.48xlarge ./launcher_scripts/llama/run_llama3_8b_seq8k.sh cluster=$CLUSTER recipes.run.name=llama3-pretrain recipes.trainer.num_nodes=4 instance_type=$INSTANCE # watch the Slurm queue squeue -u $USER
Expected output: the launcher submits a Slurm job and prints a job id. squeue shows the job in state R across the four allocated nodes, and the training log on the shared filesystem shows the loss falling step by step.
Failure mode: the first failure is almost always capacity. There is no ml.p5.48xlarge quota in your Region, so cluster creation or job launch fails with a limit or capacity error. Request the quota and reserve capacity ahead of the run. If a node degrades mid-job, the health agent cordons it, pulls a spare, and auto-resume restarts from the last checkpoint, which you see as a short gap in the log. Confirm the exact launcher path and parameter names against the current recipes repository before you script this. [VERIFY recipe script path and parameter names]
What a cluster costs
HyperPod itself does not add a premium. You pay for the instances in the cluster, per instance-hour, for as long as the cluster exists, and that includes the spare nodes sitting ready. This is the fact that reorders every plan. A HyperPod cluster is a standing cost measured in racks of GPUs, so the meter runs on the whole fleet whether a job is training or the cluster is idle between runs. The instance choice sets the scale of that meter.
| Instance | Accelerators | Typical use |
|---|---|---|
| ml.p5.48xlarge | 8x NVIDIA H100 | Large model pre-training |
| ml.p4d.24xlarge | 8x NVIDIA A100 | Mid-size training and tuning |
| ml.trn1.32xlarge | 16x AWS Trainium | Cost-tuned training, see Part 7 |
Instance rates vary by Region and change often, and reserved options such as flexible training plans discount steady use. Confirm current rates on the SageMaker pricing page before you plan. [VERIFY current per-hour rates and flexible training plan terms]
Because the fleet cost is fixed while it runs, the number that decides value is goodput, not the sticker rate. If a quarter of your paid GPU time is lost to failed runs and manual restarts, you are buying a third more hardware than the work needs. That is where the resiliency features pay you back, and it is easiest to see in GPU-hours.
Worked example
Take a three-week pre-training run on 256 H100 GPUs, which is 32 nodes of ml.p5.48xlarge. Three weeks is about 504 hours, so you provision roughly 129,000 GPU-hours and you pay for all of them. At 70% goodput, about 38,700 GPU-hours produce nothing, lost to failed steps and slow manual recovery. Lift goodput to 95% with checkpointless training and node auto-recovery, and wasted time drops to about 6,450 GPU-hours. That is roughly 32,000 GPU-hours of the same fleet redirected from waste to training, on hardware you already paid for. Multiply the saved hours by your ml.p5 per-GPU-hour rate to get the dollar figure for your Region. [VERIFY per-GPU-hour rate]
Where HyperPod bites
Capacity is the first wall. The instances people want for this, ml.p5 in particular, are scarce and quota-limited per Region, so you cannot assume you can stand up 32 nodes on demand. Plan capacity ahead, use a reserved option where it fits, and expect to design around the Region that actually has the accelerators rather than the one you prefer. A cluster you cannot fill is a plan, not a cluster.
The second bite is the idle fleet. Because the cluster is persistent, the gaps between runs cost the same as the runs. A team that provisions a big cluster for one training campaign and then leaves it up while people write the next dataset is burning the full rate for nothing. Either keep the cluster busy with governance and back-to-back jobs, or tear it down between campaigns and accept the setup time. There is no scale-to-zero here.
The third is operational weight. On EKS you are running Kubernetes at GPU scale, with the fabric, drivers, and networking that implies, and that is a real platform skill set, not a checkbox. On Slurm you own a scheduler and a shared filesystem. Neither is turnkey. If your team has never run multi-node distributed training, budget for the learning, start on a small cluster, and get one recipe working end to end before you scale the node count.
Where a resilient cluster pays for itself
My recommendation is narrow on purpose. Use HyperPod when a job spans multiple nodes for days or weeks and a restart from scratch would cost you real money, and when you can keep the cluster busy enough that the standing fleet is not mostly idle. That is the zone where auto-recovery and checkpointless training turn wasted GPU-hours back into training and the resiliency pays for the operational weight. Below that, a plain managed SageMaker training job or a JumpStart endpoint from Part 18 is cheaper and far less to run, because you are not paying to keep a fleet warm.
When you do commit, start on EKS if your org already runs Kubernetes, keep a real checkpoint interval even with checkpointless enabled, wire task governance before a second team shares the cluster, and put a hard budget alarm on the account so an idle fleet cannot run silently for a week. Treat the cluster like a reserved data center, because for the length of your run that is what it is.
Part 20 moves from running the cluster to feeding it, with data prep and grounding data, since the fastest cluster in the world still trains on whatever you put in front of it. If you build across clouds, the same resilient-cluster idea shows up as distributed training on Azure ND clusters and on the GPU fabric the NVIDIA AI stack sits under all of them. This week, before you provision anything, pull the goodput number from one recent multi-node run: paid GPU-hours versus hours that produced training progress. If that ratio is under 90%, HyperPod resiliency is a cost fix, not a luxury, and you now know where to point it.
References
• Amazon SageMaker HyperPod documentation
• Introducing checkpointless and elastic training on SageMaker HyperPod
• SageMaker HyperPod task governance
• SageMaker HyperPod features


DrJha