Blog
aws

Training ML Models on AWS EKS with H100 GPUs

2026-04-02

If you’re looking to train ML models on GPU-accelerated Kubernetes clusters, AWS EKS with NVIDIA H100s (P5 instances) is one of the most capable options available today. The ecosystem of tooling around it has matured significantly — but finding the right starting point can be overwhelming.

This post collects the best hands-on resources I’ve found, organized by source.

Which Cloud Providers Offer H100s for Kubernetes?

Before diving into EKS specifically, here’s the lay of the land:

The rest of this post focuses on EKS.

AWS Official Resources

These come directly from AWS and are well-maintained:

NVIDIA Resources

NVIDIA maintains the GPU software stack that makes all of this work:

Kubeflow on EKS

Kubeflow is the most established ML platform for Kubernetes:

Community and OSS

If you have a specific use case like fine-tuning an LLM on H100s, here’s the order I’d approach it:

  1. Infrastructure — Use data-on-eks or terraform-aws-eks-blueprints to provision a P5 EKS cluster with EFA networking enabled.

  2. GPU stack — Deploy the NVIDIA GPU Operator to handle drivers, toolkit, and device plugins automatically.

  3. Training framework — Use Kubeflow Training Operator (PyTorchJob) for standard distributed training, or NeMo Framework Launcher if you’re training large language models.

  4. Orchestration — Add Kubeflow Pipelines or Ray if you need pipeline-level orchestration across multiple training stages.

The key thing to get right is the networking layer. H100s on P5 instances support EFA (Elastic Fabric Adapter) for high-bandwidth GPU-to-GPU communication across nodes. Make sure your EKS node groups have EFA enabled and that NCCL is configured to use it — this is where most performance is lost.

Further Reading