EC2 Instance Type Names Cheat Sheet

From official reInvent video:

The name “c5d.9xlarge” is composite of:

  • c = instance family
  • 5 = instance generation
  • d = additional capabilities
  • 9xlarge = instance size

There is no official explanation as why a letter is chosen for a certain type.

To remember instance family, try:

  • T for Turbo (Burstable)
  • M for Most Scenarios (General Purpose)
    • 1 vCPU to 4GB memory
  • C for Compute
    • Different physical CPU type
    • 1 vCPU to 2GB memory, varies amongst sizes
  • R for Random-Access Memory
    • 1 vCPU to 8GB memory
  • X for Extra-Large Memory (~4TB DRAM)
    • 1 vCPU to 15.25GB memory
  • H for HDD (16TB Local)
  • D for Dense Storage (48TB Local)
  • I for I/O (NVMe Local)
  • HS for High Storage
  • G for GPU
    • g4 = nVidia T4
  • P for Premium GPU
    • p3 = nVidia Tesla V100
  • F for FPGA
  • A for ARM

Also for additional capabilities:

  • a for AMD CPUs
  • e for Extra Capacity (Storage or RAM)
  • n for Networking Optimized
  • d for Directly-Attached Instance Storage (NVMe)
  • g for Graviton2 (AWS) processors

To understand sizes:

  • large = 2 vCPUs
  • xlarge = 4 vCPUs
  • 2xlarge = 8 vCPUs
  • 4xlarge = 16 vCPUs, etc.
  • xlarge = by 4 vCPUs
  • metal = Bare-metal server, usually 96 vCPUs
  • Burstable (t2, t3) instance types have smaller instances like medium, small, micro, nano, for t2 small and downwards are 1 vCPUs, for t3 these are all 2vCPUs, with varying memory sizes
  • Compute (c4, c5) instance types have odd number sizes like 9xlarge