Skip to main content
Use CPU workers for work that doesn’t need a GPU, such as preprocessing, routing, or lightweight APIs. Set the cpu parameter to an instance type ID:
cpu and gpu are mutually exclusive. To set fallbacks, pass a list, for example cpu=["cpu3c-2-4", "cpu3g-2-8"]. The runpod.CpuInstanceType enum lists the same IDs if you prefer constants, for example runpod.CpuInstanceType.CPU3C_2_4.

Instance types

Instance IDs follow the pattern cpu{generation}{type}-{vCPU}-{memory GB}. The c types are compute-optimized and the g types are general purpose, with more memory per vCPU.

Data center availability

CPU stock varies by generation:
  • 3rd generation (cpu3c, cpu3g): EU-CZ-1, EU-RO-1, US-CA-2, US-IL-1, US-KS-2, US-MO-1, US-MO-2, US-NC-2, US-NE-1, and US-WA-1.
  • 5th generation (cpu5c): EU-RO-1 only.
If you pin a CPU resource to a data center with datacenter, choose one that stocks the instance type. If the resource shares a network volume with other resources, every resource must be able to run in the volume’s data center.

Limitations

  • Global volumes require GPU compute, so CPU resources can only mount network volumes.
  • min_cuda_version has no effect on CPU resources, and setting it raises an error.
  • CPU workers get a 10 GB container disk by default. Change it with container_disk_gb.

Next steps

Last modified on October 15, 2026