Contents
Best Cloud GPU Services for LLM Post-Training — the cheapest GPU hour is the one you did not need to buy
You have a base model, a dataset, and a plan to run SFT, then DPO, then maybe some GRPO. Then you open a GPU provider's pricing page and discover that "fine-tuning" means six different products depending on who is selling it.
Post-training needs differ sharply from inference or benchmarking — for the benchmarking side, see the cloud GPU benchmarking guide. You need memory for gradients and optimizer states, fast links between GPUs, storage for large checkpoints, and, for reinforcement learning, a generation engine running alongside your trainer.
This guide sorts the main options, explains what each workload needs, and shows how to choose. Prices and capacity change constantly, and nearly every comparison out there comes from a GPU provider, a competitor or an affiliate site, so this article leaves out specific prices and focuses on structural differences you can verify.
Two Ways to Buy Post-Training
One framing captures the central decision: do you want fine-tuning as a service or as a capability?
- As a service: you send data and settings, a provider runs the job and hands back a tuned model. Together AI, Fireworks, Baseten and OpenAI's fine-tuning API follow this model.
- As a capability: you rent GPUs and run your own training stack, with your own framework, container and recipe. RunPod, Lambda, CoreWeave, Modal and similar clouds follow this model.
The service route removes work and limits control. The capability route gives you control and costs you engineering time.
What Each Workload Needs
Different post-training methods stress hardware in different ways:
- LoRA and QLoRA fine-tuning: low memory needs. A 7B model often fits on a single 24 GB to 80 GB GPU, and tools like Unsloth target exactly this case.
- Full fine-tuning: much heavier, since you hold weights, gradients and optimizer states for every parameter.
- DPO and other preference methods: similar to fine-tuning, plus a reference model, or adapter tricks that avoid holding a second full copy.
- RL with PPO or GRPO: the heaviest. You run the trainer, keep a reference model and generate many long rollouts per step, which usually requires an inference engine like vLLM next to the trainer.
The Memory Math
A rough rule for full fine-tuning with mixed precision and the Adam optimizer: about 16 bytes per parameter. That covers:
- 2 bytes of weights.
- 2 bytes of gradients.
- 4 bytes for a full-precision master copy.
- 8 bytes for optimizer states.
Activations come on top.
def full_finetune_gb(params_billions, bytes_per_param=16):
"""Rough GPU memory for weights + grads + optimizer states, excluding activations."""
return params_billions * bytes_per_param
print(full_finetune_gb(7)) # about 112 GB before activations
That is why a 7B model needs multiple 80 GB GPUs for full fine-tuning, while a 4-bit QLoRA run on the same model fits in a fraction of that memory. Treat these numbers as planning estimates, and measure your real runs.
Interconnect, Storage, and Interruptions
Three factors separate good post-training clouds from merely cheap ones.
Interconnect
Multi-GPU training moves a lot of data between GPUs.
- Inside one machine, NVLink handles that.
- Across machines, you need fast networking such as InfiniBand.
If your job fits on one 8-GPU node, you can often ignore multi-node networking. If it does not, check the cluster's network before you rent.
Storage and Checkpoints
Checkpoints that include optimizer states run large, and RL runs write them often.
- You need fast persistent storage, plus a plan for moving data around.
- Check egress fees before you commit, since downloading hundreds of gigabytes adds up.
Interruptions
Spot and community capacity costs less and can disappear mid-run.
- If you use it, checkpoint frequently and automate resume.
- A cheap node that loses six hours of training is not cheap.
# Make preemption boring: checkpoint often, resume automatically
export SAVE_STEPS=50
export RESUME_FROM_CHECKPOINT=true
watch -n 300 'du -sh /workspace/checkpoints' # watch the disk you are paying for
The Contenders
Managed Fine-Tuning Services
Together AI sells a managed fine-tuning API and CLI for supervised and preference tuning, plus serving for the resulting model. Comparison pieces describe a sweet spot in fine-tuning and smaller custom-model work, where managed tooling saves engineering time. A competitor's article claims limits such as:
- Shared infrastructure.
- No raw checkpoint access.
- No multi-node LoRA.
Verify what is current before you decide. Fireworks AI, Baseten and Replicate also sell fine-tuning as a service, with different emphasis on enterprise features and serving. OpenAI's fine-tuning API offers the lowest-friction path for proprietary models, with no GPU management, but you do not get the resulting model weights, a major difference from open-weight routes.
- Best for: teams that want a tuned model fast, with little infrastructure work.
- Watch out: less control over the training recipe, checkpoints and sometimes algorithms. Check which methods each service supports, since online RL support varies.
Developer GPU Clouds
RunPod offers on-demand pods, serverless endpoints and instant clusters for multi-node work, with community and secure tiers. Its own guide describes support for multi-node Axolotl training on clusters, and independent reviews call it a strong value choice. Community-tier reliability varies, so use the secure tier for long runs.
Lambda provides bare-metal-style instances with SSH access and clusters, and a comparison piece reports large Blackwell-generation clusters with InfiniBand networking, aimed at heavy training and reinforcement learning. You manage the tooling yourself.
Modal offers serverless GPUs with per-second billing and a polished developer experience, which suits short experiments and bursty jobs.
- Best for: teams that own their recipe and want control over frameworks, containers and checkpoints.
- Watch out: you assemble the stack, and reliability and support differ by tier.
Large Clusters and Hyperscalers
CoreWeave and Nebius target large-scale training with Kubernetes-style infrastructure and fast networking. Hyperscalers like AWS, Google Cloud and Azure offer managed training services and strong governance, at higher prices and with more setup.
- Best for: multi-node full fine-tuning, long RL runs, and organizations with compliance requirements.
- Watch out: minimum sizes, capacity limits and quota requests can slow you down.
Budget Bare-Metal Options
Some smaller providers, such as Spheron, advertise bare-metal GPU servers with InfiniBand at lower prices than managed services. Treat provider claims with caution, and test reliability and support on a short project first.
Quick Matching Guide
| Situation | Start with |
|---|---|
| Single GPU, LoRA or QLoRA, learning the ropes | RunPod, Modal or Lambda with Unsloth or TRL |
| Managed SFT or DPO, no infrastructure appetite | Together AI, Fireworks or Baseten |
| Proprietary model customization | OpenAI's fine-tuning API, if you accept no weight access |
| Multi-GPU full fine-tuning on one node | Lambda or RunPod 8-GPU instances |
| Multi-node training or long RL runs | Cluster offerings from RunPod, Lambda, CoreWeave or Nebius |
| Strict compliance and governance | A hyperscaler |
Most teams should prototype on one GPU with LoRA, prove the data and the evals, and only then pay for clusters.
RL Adds Special Requirements
PPO and GRPO runs bring extra demands:
- Generation dominates time. Rollouts with long chains of thought eat most of the wall-clock. Plan for a fast inference engine like vLLM.
- Memory covers several components: the trainer, a reference model and the generation engine, plus a critic for PPO.
- Framework needs: scale-focused RL frameworks like verl and OpenRLHF commonly run on Ray, so check that your provider supports Ray clusters or lets you install it — see the post-training tools comparison.
- Pool design: some setups colocate training and generation on the same GPUs, others separate them. Your cluster layout limits those choices.
- Verifier workloads: code-execution rewards need sandboxed CPU capacity next to your GPUs.
Most managed fine-tuning services focus on supervised and preference tuning, so confirm that any service you consider supports the RL method you want. If you do run RL, plan the monitoring alongside the cluster, because KL drift is much easier to catch early than to debug after a paid run.
Compare Providers on These Points
- Control: can you pick the framework, container and training recipe?
- Weights and checkpoints: do you own and access them?
- Multi-node support: does it exist, and what network backs it?
- Storage: is persistent, fast storage available, and what does egress cost?
- Preemption policy: how do spot or community nodes behave?
- Time to first run: setup time counts as cost.
- Billing granularity: per second, per hour, or per job.
- Data residency and security: check regions, isolation and certifications.
- Support: you will need it when a 64-GPU job hangs at 3 a.m.
Budget Realistically
Estimate cost as GPU-hours times price, then pad generously. Real projects include failed runs, hyperparameter sweeps, debugging time and evaluation. A prototype that costs $50 can become a $5,000 project once you add sweeps, so plan for multiples, not exact figures.
Cost-control habits that work:
- Prototype small with LoRA on a modest GPU.
- Use spot capacity for fault-tolerant runs with automatic resume.
- Cache datasets and model weights on persistent storage.
- Shut instances down the moment a run ends.
- Evaluate cheaply and often, so you catch bad runs early.
Common Mistakes I See Teams Make
- Renting a cluster before the recipe works. Prove it on one GPU first.
- Ignoring interconnect. Multi-node jobs crawl on slow networks.
- Forgetting checkpoints on spot nodes. One preemption can erase a day.
- Assuming a managed service supports your method. Check RL and DPO support.
- Skipping egress and storage costs. They surprise people.
- Trusting vendor price tables. Test with your workload.
Figure 1: Best Cloud GPU Services for LLM Post-Training — the cheapest GPU hour is the one you did not need to buy
Your Quick-Start Checklist
- Choose service or capability: managed fine-tuning or your own stack.
- Estimate memory for your model size and method.
- Prototype on one GPU with LoRA or QLoRA.
- Shortlist two providers, and run the same short job on both.
- Check interconnect, storage and preemption rules before you scale.
- Checkpoint often, and test resume once.
- Track cost per experiment, and shut down idle machines.
Best Book to Read
| Cover | Book | Description | Get it |
|---|---|---|---|
![]() |
Designing Machine Learning Systems | infrastructure, cost and the operational reality of running training systems. | View on Amazon |
![]() |
AI Engineering | evaluation-first thinking that keeps expensive GPU hours pointed at the right question. | View on Amazon |
![]() |
Build a Large Language Model (From Scratch) | what actually happens inside the training loop you are renting hardware for. | View on Amazon |
![]() |
Reinforcement Learning: An Introduction | why PPO and GRPO runs need so much more generation capacity. | View on Amazon |
As an Amazon Associate I earn from qualifying purchases. Links on this page are affiliate links, and I may earn a commission at no extra cost to you.
Unlock AI That Actually Works
Get lifetime access to GPT-6 Astra, Claude Fable 5.1, Gemini 3.5, Grok 4.5, and more — all in one platform. Build websites, apps, videos, content, and digital products from a single command. No monthly fees. No tool-hopping.
Click here to get GPTAstra Max now — one-time payment, lifetime access.
Frequently Asked Questions
Should I use a managed fine-tuning service or rent my own GPUs?
It comes down to whether you want fine-tuning as a service or as a capability. With a managed service you send data and settings and get a tuned model back, which is what Together AI, Fireworks, Baseten and the OpenAI fine-tuning API offer; you give up control of the recipe, checkpoints and sometimes the algorithm, and for proprietary models you may not receive the weights at all. Renting GPUs from RunPod, Lambda, CoreWeave, Modal and similar clouds gives you the framework, container and recipe, and costs engineering time instead. Choose the service route when time to a tuned model matters most, and the capability route when you need custom methods, checkpoint access or your own evaluation loop wired into training.
How much GPU memory does LLM fine-tuning need?
A rough rule for full fine-tuning with mixed precision and the Adam optimizer is about 16 bytes per parameter: 2 bytes of weights, 2 of gradients, 4 for a full-precision master copy and 8 for optimizer states, with activations on top. A 7B model therefore needs roughly 112 GB before activations, which means multiple 80 GB GPUs. LoRA and QLoRA change the picture completely because you train small adapters instead of every parameter, so a 4-bit QLoRA run of the same 7B model fits in a fraction of that memory and often runs on a single 24 GB to 80 GB card. Treat all of these as planning estimates and measure your real runs.
Why does interconnect matter for multi-GPU training?
Because multi-GPU training moves a lot of data between GPUs, especially with gradient synchronisation. Inside one machine NVLink handles that well, so if your job fits on a single 8-GPU node you can often ignore multi-node networking. Across machines you need fast networking such as InfiniBand, and a slow link turns a multi-node job into a crawl where GPUs sit idle waiting for gradients. Check the cluster's network before you rent, and match the topology to the job: one node is simpler, multi-node only pays off when the model or the run genuinely needs it.
Is spot or community GPU capacity safe for training?
It is safe if you design for preemption. Spot and community capacity costs less and can disappear mid-run, so use it for fault-tolerant work, checkpoint frequently, and automate resume so a lost node restarts from the last checkpoint rather than from zero. A cheap node that loses six hours of training is not cheap. For long reinforcement learning runs, where rollouts and regeneration are expensive, weigh the savings against the recovery cost and consider the secure tier or on-demand capacity for the final runs that produce the model you ship.
How should I budget for a post-training project?
Estimate GPU-hours times price, then pad generously, because real projects include failed runs, hyperparameter sweeps, debugging time and evaluation. A prototype that costs 50 dollars can become a 5,000 dollar project once you add sweeps and reruns, so plan for multiples rather than exact figures. The habits that control cost are unglamorous: prototype small with LoRA on a modest GPU, use spot capacity only for fault-tolerant runs with automatic resume, cache datasets and weights on persistent storage, shut instances down the moment a run ends, and evaluate cheaply and often so you catch a bad run early.
Wrapping Up
The best GPU cloud for post-training depends on your method and your appetite for infrastructure work. Managed services suit quick SFT and preference tuning, developer GPU clouds suit teams that own their recipe, and large clusters suit multi-node and RL-heavy projects.
Start on a single GPU, prove your data and evaluations, and rent bigger machines only when your measurements demand them. The cheapest GPU hour is the one you did not need to buy.



