~15 min read

GPU Selection

Your GPU determines what you can train. VRAM is the primary bottleneck — it must hold the model weights, optimizer states, gradients, and activations all at once. Use the checker below to see what your current hardware supports.

GPUStatusBackendImage GenLLM SpeedNotes
RTX 4090 (24 GB)FullCUDA 12.4~3s~120 tok/sFastest consumer GPU
RTX 4070 (12 GB)FullCUDA 12.4~8s~80 tok/sGreat balance of price/performance
RTX 3060 (12 GB)FullCUDA 11.8~15s~45 tok/s12 GB VRAM at budget price
GTX 1660 (6 GB)PartialCUDA 11.8~30s~20 tok/s6 GB limits model size
RX 7900 XT (20 GB)FullROCm 6.2~6s~90 tok/sBest AMD option, large VRAM
RX 7600 (8 GB)FullROCm 6.2~18s~40 tok/sBudget AMD with ROCm support
Radeon 780M APU (8 GB shared)PartialROCm 6.2~45s~15 tok/sBF16 only, 5-min MIOpen warmup
Arc A770 (16 GB)PartialoneAPI/IPEX~20s~35 tok/sRequires oneAPI runtime
M2 Pro (16 GB unified)FullMPS (Metal)~12s~50 tok/sUnified memory, no discrete VRAM limit
M1 (8 GB unified)PartialMPS (Metal)~35s~25 tok/s8 GB tight for SDXL
M3 Max (36 GB unified)FullMPS (Metal)~8s~70 tok/sRuns large models easily
CPU only (no GPU)PartialCPU fallback~180s~5 tok/sWorks but 10-50x slower

The tables below show minimum VRAM requirements for each training method. If your GPU doesn’t meet the minimum, the training job will fail with an out-of-memory error.

Image Training VRAM

Image model training requirements vary significantly by method. LoRA is the most VRAM-efficient, while full fine-tuning requires high-end hardware.

Method8 GB12 GB16 GB24 GB
LoRA SD 1.5YesYesYesYes
LoRA SDXLNoYesYesYes
DreamBooth SD 1.5NoYesYesYes
DreamBooth SDXLNoNoYesYes
Full Fine-Tune SD 1.5NoNoYesYes
Textual InversionYesYesYesYes
If you have exactly 8 GB VRAM, stick with LoRA on SD 1.5 or Textual Inversion. For SDXL training, 12 GB is the practical minimum.

LLM Training VRAM

Language model training is more VRAM-hungry than image training due to larger model sizes and longer sequence lengths. QLoRA’s 4-bit quantization is the key enabler for consumer GPUs.

Method8 GB12 GB16 GB24 GB48 GB
QLoRA 3BYesYesYesYesYes
QLoRA 7–8BNoYesYesYesYes
QLoRA 13BNoNoYesYesYes
LoRA 3BNoYesYesYesYes
LoRA 7–8BNoNoYesYesYes
LoRA 13BNoNoNoYesYes
Full 7BNoNoNoNoYes
Unsloth can reduce QLoRA VRAM requirements by up to 60%. With Unsloth, a QLoRA 7B training job that normally needs 12 GB can fit in 8 GB. Check the Unsloth app on Thumper Hub.

Multi-GPU Training

Most consumer users have a single GPU, but if you have two or more, some tools can split training across them for larger models or faster throughput.

Supported Tools

  • Axolotl — Supports FSDP (Fully Sharded Data Parallel) and DeepSpeed ZeRO stages 1–3
  • LLaMA-Factory — Supports DeepSpeed ZeRO stages 1–3 via configuration

When Multi-GPU Matters

  • Training models larger than your single GPU’s VRAM (e.g., full 13B fine-tune)
  • Reducing training time by splitting batches across GPUs
  • Using multiple smaller GPUs you already own (e.g., 2× RTX 3060 12 GB = 24 GB effective)
Multi-GPU training requires NVIDIA GPUs with NVLink or PCIe connections. AMD multi-GPU training support is experimental and not recommended for production use.

Cost Comparison

Local training pays for itself quickly. Here’s how local GPU costs compare to popular cloud platforms for two common training jobs.

PlatformImage LoRA (SDXL, 1 hr)LLM QLoRA (7B, 4 hr)
Local RTX 4090~$0.05 (electricity)~$0.20 (electricity)
RunPod A100 (80 GB)~$2.00~$8.00
Replicate~$3.50~$14.00

After 10–20 training runs, a local GPU has paid for itself compared to cloud pricing. The savings compound with experimentation — you can iterate freely without watching a billing meter.

AMD & Apple Notes

Training tool support varies by GPU vendor. NVIDIA has the broadest compatibility, but AMD and Apple Silicon are catching up.

AMD Discrete GPUs (ROCm)

  • ROCm 6.0+ is required for training. Older versions have critical bugs in gradient computation.
  • Kohya SS and LLaMA-Factory both support ROCm with the correct PyTorch build.
  • Expect 5–15% slower training vs equivalent NVIDIA GPU due to less optimized kernels.
  • RX 7900 XT (20 GB) and RX 7900 XTX (24 GB) are the best consumer AMD training GPUs.

AMD APU Warning

AMD integrated GPUs (APUs like Radeon 780M) share system RAM and have very limited compute throughput. Training on an APU is technically possible for tiny models but extremely slow (10–50x slower than a discrete GPU). Use CPU training instead — it is faster on APUs because it avoids the ROCm overhead.

Apple Silicon (MPS)

  • MPS (Metal Performance Shaders) backend works for inference but training support is partial.
  • Kohya SS has experimental MPS support for LoRA training on M1/M2/M3.
  • Expect some operations to fall back to CPU, reducing effective throughput.
  • Unified memory means no VRAM limit — but bandwidth is shared with the CPU.
Both AMD ROCm and Apple MPS require BF16 (bfloat16) precision for training. FP16 (float16) causes NaN errors in gradient computation on these platforms. All Thumper-packaged training tools default to BF16 automatically.

Key Takeaways

  • VRAM is the primary bottleneck — check the tables before starting a training job
  • QLoRA makes 7B LLM training possible on 12 GB GPUs; Unsloth can push it to 8 GB
  • Local training costs pennies per run vs dollars per hour in the cloud
  • AMD ROCm and Apple MPS require BF16 precision — never use FP16 for training
  • APU training is not recommended — use CPU mode instead for integrated graphics