Machine families resource and comparison guide

This document describes the machine families, machine series, and machine types that you can choose from to create a virtual machine (VM) instance or bare metal instance with the resources that you need. For accelerator-optimized machines, this document describes only Graphics Processing Unit (GPU) accelerators. For information about machine types that contain Google's custom-developed Tensor Processing Units (TPUs), see TPU machines.

There are several machine families you can choose from. Each machine family is further organized into machine series and predefined machine types within each series. For example, within the N2 machine series in the general-purpose machine family, you can select the n2-standard-4 machine type.

When you create a compute instance, you select a machine type from a machine family and series. The machine type determines the resources that Compute Engine allocates to the instance. For example, the n2-standard-4 machine type creates a VM with 4 vCPUs and 16 GB of memory.

For information about machine series that support Spot VMs (and preemptible VMs), see Compute Engine instances provisioning models.

Note: This is a list of Compute Engine machine families. For a detailed explanation of each machine family, see the following pages:

Compute Engine terminology

This documentation uses the following terms:

The following sections describe the different machine types.

Predefined machine types

Predefined machine types come with a non-configurable amount of memory and vCPUs. Predefined machine types use a variety of vCPU to memory ratios:

  • highcpu — from 1 to 3 GB memory per vCPU; typically, 2 GB memory per vCPU.
  • standard — from 3 to 7 GB memory per vCPU; typically, 4 GB memory per vCPU.
  • highmem — from 7 to 12 GB memory per vCPU; typically, 8 GB memory per vCPU.
  • megamem — from 12 to 15 GB memory per vCPU; typically, 14 GB memory per vCPU.
  • ultramem — from 24 to 31 GB memory per vCPU.

  • hypermem — from 15 to 24 GB memory per vCPU; typically, 16 GB memory per vCPU.

    For example, a c3-standard-22 machine type has 22 vCPUs, and as a standard machine type, it also has 88 GB of memory.

    Local SSD machine types

    Local SSD machine types are special predefined machine types. The machine type names include lssd. When you create a compute instance using one of the following machine types, Titanium SSD or Local SSD disks are automatically attached to the instance:

    Other machine series also support Local SSD disks but don't use a machine type name that includes lssd. For a list of all the machine types that you can use with Titanium SSD or Local SSD disks, see Choose a valid number of Local SSD disks.

    Bare metal machine types

    Bare metal machine types are a special predefined machine type. The machine type name includes -metal. When you create a compute instance using one of these machine types, there is no hypervisor installed on the instance. You can attach disks to a bare metal instance, just as you would with a VM instance. Bare metal instances can be used in VPC networks and subnetworks in the same way as VM instances.

    For more information, see Bare metal instances on Compute Engine.

    Custom machine types

    If none of the predefined machine types match your workload needs, you can create a VM instance with a custom machine type for the N and E machine series in the general-purpose machine family.

    Custom machine types cost slightly more to use compared to an equivalent predefined machine type. Also, there are limitations in the amount of memory and vCPUs that you can select for a custom machine type. The on-demand prices for custom machine types include a 5% premium over the on-demand and commitment prices for predefined machine types.

    When creating a custom machine type, you can use the extended memory feature. Instead of using the default memory size based on the number of vCPUs you select, you can specify an amount of memory, up to the limit for the machine series.

    For more information, see Create a VM with a custom machine type.

    Shared-core machine types

    The E2 and N1 series contain shared-core machine types. These machine types timeshare a physical core which can be a cost-effective method for running small, non-resource intensive apps.

    For more information, see CPU bursting.

    Machine family and series recommendations

    The following tables provide recommendations for different workloads.

    General-purpose workloads
    N4, N4A, N4D, N2, N2D, N1 C4, C4A, C4D, C3, C3D E2 Tau T2D, Tau T2A
    Balanced price/performance across a wide range of machine types Consistently high performance for a variety of workloads Day-to-day computing at a lower cost Best per-core performance/cost for scale-out workloads
    • Medium traffic web and app servers
    • Containerized microservices
    • Business intelligence apps
    • Virtual desktops
    • CRM applications
    • Development and test environments
    • Batch processing
    • Storage and archive
    • High traffic web and app servers
    • Databases
    • In-memory caches
    • Ad servers
    • Game Servers
    • Data analytics
    • Media streaming and transcoding
    • CPU-based ML training and inference
    • Low-traffic web servers
    • Back office apps
    • Containerized microservices
    • Microservices
    • Virtual desktops
    • Development and test environments
    • Scale-out workloads
    • Web serving
    • Containerized microservices
    • Media transcoding
    • Large-scale Java applications

    Optimized workloads
    Storage-optimized Compute-optimized Memory-optimized Accelerator-optimized* (GPUs)
    Z3 H4D, H3, C2 and C2D X4, M4, M3, M2, M1 A4X Max, A4X, A4, A3, A2, G4, G2
    Highest block storage to compute ratios for storage-intensive workloads Highest performance and lower cost for high performance computing (HPC), multi-node and compute-bound workloads Highest memory to compute ratios for memory-intensive workloads Optimized for accelerated high performance computing workloads
    • SQL, NoSQL, and vector databases
    • Data analytics and data warehouses
    • Search
    • Media streaming
    • Large distributed parallel file systems
    • Manufacturing, weather forecasting, electronic design automation (EDA), High-performance web servers
    • Healthcare and life sciences, scientific computing
    • Seismic processing and structural mechanics applications
    • Modeling and simulation workloads, AI/ML
    • High-performance web servers, Game Servers
    • Small to extra-large SAP HANA in-memory databases
    • In-memory data stores, such as Redis
    • Simulation
    • High Performance databases such as Microsoft SQL Server, MySQL
    • Electronic design automation
    • Generative AI models such as the following:
      • Large Language Models (LLM)
      • Diffusion Models
      • Generative Adversarial Networks (GAN)
    • CUDA-enabled ML training and inference
    • High-performance computing (HPC)
    • Massively parallelized computation
    • BERT natural language processing
    • Deep learning recommendation model (DLRM)
    • Video transcoding
    • Remote visualization workstation

    * For accelerator-optimized machines containing TPUs, see TPU machines.

    After you create a compute instance, you can use rightsizing recommendations to optimize resource utilization based on your workload. For more information, see Applying machine type recommendations for VMs.

    General-purpose machine family guide

    The general-purpose machine family offers several machine series with the best price-performance ratio for a variety of workloads.

    Compute Engine offers general-purpose machine series that run on either x86 or Arm architecture.

    x86

    Arm

    Storage-optimized machine family guide

    The storage-optimized machine family is best suited for high-performance and flash-optimized workloads such as SQL, NoSQL, and vector databases, scale-out data analytics, data warehouses and search, and distributed file systems that need fast access to large amounts of data stored in local storage. The storage-optimized machine family is designed to provide high local storage throughput and IOPS at sub-millisecond latency.

    Z3 runs on the Intel Xeon Scalable processor (code name Sapphire Rapids) with DDR5 memory and Titanium offload processors. Z3 brings together compute, networking, and storage innovations into one platform. Z3 instances are aligned with the underlying NUMA architecture to offer optimal, reliable, and consistent performance.

    Compute-optimized machine family guide

    The compute-optimized machine family is optimized for running high performance computing (HPC), multi-node, and compute-bound applications by providing high performance per core.

    Memory-optimized machine family guide

    The memory-optimized machine family has machine series that are ideal for OLAP and OLTP SAP workloads, genomic modeling, electronic design automation, and memory intensive HPC workloads. This family offers more memory per core than any other machine family, with up to 32 TB of memory.

    Accelerator-optimized machine family guide

    The accelerator-optimized machine family is ideal for massively parallelized Compute Unified Device Architecture (CUDA) compute workloads, such as machine learning (ML) and high performance computing (HPC). This machine family is the optimal choice for workloads that require accelerators (GPUs or TPUs). This section provides information about GPU machines. For information about machines containing TPUs, see TPU machines.

    Google also offers AI Hypercomputer for creating clusters of accelerator-optimized VMs with inter-GPU communication, which are designed for running very intensive AI and ML workloads. For more information, see AI Hypercomputer overview.

    Arm

    x86

    Machine series comparison

    Use the following table to compare each machine family and determine which one is appropriate for your workload. For a comparison of TPU versions, see TPU machines.

    If, after reviewing this section, you are still unsure which family is best for your workload, start with the general-purpose machine family. For details about all supported processors, see CPU platforms.

    To learn how your selection affects the performance of disk volumes attached to your compute instances, see:

    Compare the characteristics of different machine series, from C4 to G2. You can select specific properties in the Choose instance properties to compare field to compare those properties across all machine series in the following table.

    General-purpose General-purpose General-purpose General-purpose General-purpose General-purpose General-purpose General-purpose General-purpose General-purpose General-purpose General-purpose General-purpose Cost optimized Storage optimized Compute optimized Compute optimized Compute optimized Compute optimized Memory optimized Memory optimized Memory optimized Memory optimized Memory optimized Accelerator optimized Accelerator optimized Accelerator optimized Accelerator optimized Accelerator optimized Accelerator optimized Accelerator optimized Accelerator optimized Accelerator optimized
    VM and bare metal VM and bare metal VM and bare metal VM and bare metal VM VM VM VM VM VM VM VM VM VM VM and bare metal VM VM VM VM Bare metal VM VM VM VM VM Bare metal VM VM VM VM VM VM VM
    Intel Emerald Rapids and Granite Rapids Google Axion AMD EPYC Turin Intel Sapphire Rapids AMD EPYC Genoa Intel Emerald Rapids Google Axion AMD EPYC Turin Intel Cascade Lake and Ice Lake AMD EPYC Rome and EPYC Milan Intel Skylake, Broadwell, Haswell, Sandy Bridge, and Ivy Bridge AMD EPYC Milan Ampere Altra Intel Skylake, Broadwell, and Haswell, AMD EPYC Rome and EPYC Milan Intel Sapphire Rapids AMD EPYC Turin Intel Sapphire Rapids Intel Cascade Lake AMD EPYC Milan Intel Sapphire Rapids Intel Emerald Rapids Intel Ice Lake Intel Cascade Lake Intel Skylake and Broadwell Intel Skylake, Broadwell, Haswell, Sandy Bridge, and Ivy Bridge NVIDIA Grace NVIDIA Grace Intel Emerald Rapids Intel Emerald Rapids Intel Sapphire Rapids Intel Cascade Lake AMD EPYC Turin Intel Cascade Lake
    x86 Arm x86 x86 x86 x86 Arm x86 x86 x86 x86 x86 Arm x86 x86 x86 x86 x86 x86 x86 x86 x86 x86 x86 x86 Arm Arm x86 x86 x86 x86 x86 x86
    2 to 288 1 to 96 2 to 384 4 to 176 4 to 360 2 to 80 1 to 64 2 to 96 2 to 128 2 to 224 1 to 96 1 to 60 1 to 48 0.25 to 32 8 to 192 192 88 4 to 60 2 to 112 480 to 1,920 16 to 224 32 to 128 208 to 416 40 to 160 1 to 96 144 140 224 224 208 12 to 96 6 to 384 4 to 96
    Thread Core Thread Thread Thread Thread Core Thread Thread Thread Thread Core Core Thread Thread Core Core Thread Thread Thread Thread Thread Thread Thread Thread Core Core Thread Thread Thread Thread Thread Thread
    2 to 2,232 GB 1 to 768 GB 3 to 3,072 GB 8 to 1,408 GB 8 to 2,880 GB 2 to 640 GB 2 to 512 GB 2 to 768 GB 2 to 864 GB 2 to 896 GB 1.8 to 624 GB 4 to 240 GB 4 to 192 GB 1 to 128 GB 64 to 1,536 GB 720 to 1,488 GB 352 GB 16 to 240 GB 4 to 896 GB 6,144 to 32,768 GB 248 to 5,952 GB 976 to 3,904 GB 5,888 to 11,776 GB 961 to 3,844 GB 3.75 to 624 GB 960 GB 884 GB 3,968 GB 2,952 GB 1,872 GB 85 to 1,360 GB 22 to 1,440 GB 16 to 432 GB
    NUMA UMA NUMA NUMA NUMA UMA NUMA NUMA NUMA NUMA NUMA NUMA
    AMD SEV Intel TDX AMD SEV AMD SEV, AMD SEV-SNP AMD SEV Intel TDX, NVIDIA Confidential Computing
    NVMe NVMe NVMe NVMe NVMe NVMe NVMe NVMe SCSI (PD and Local SSD)

    NVMe (Local SSD)
    SCSI (PD and Local SSD)

    NVMe (Local SSD)
    SCSI (PD and Local SSD)

    NVMe (Local SSD)
    SCSI (PD and Local SSD)

    NVMe (Local SSD)
    NVMe SCSI NVMe NVMe NVMe SCSI (PD and Local SSD)

    NVMe (Local SSD)
    SCSI (PD and Local SSD)

    NVMe (Local SSD)
    NVMe NVMe NVMe SCSI SCSI (PD and Local SSD)

    NVMe (Local SSD)
    SCSI (PD and Local SSD)

    NVMe (Local SSD)
    NVMe NVMe NVMe NVMe NVMe SCSI (PD and Local SSD)

    NVMe (Local SSD)
    NVMe NVMe
    18 TiB 6 TiB 12 TiB 12 TiB 12 TiB 0 0 0 9 TiB 9 TiB 9 TiB 0 0 0 36 TiB (VM), 72 TiB (Metal) 3 TiB 0 3 TiB 3 TiB 0 0 3 TiB 0 3 TiB 9 TiB 12 TiB 12 TiB 12 TiB 12 TiB 6 TiB 3 TiB 12 TiB 3 TiB
    Zonal and Regional Zonal and Regional Zonal and Regional Zonal Zonal Zonal and Regional Zonal Zonal Zonal Zonal Zonal and Regional Zonal
    Zonal Zonal Zonal and Regional Zonal and Regional Zonal and Regional Zonal Zonal Zonal and Regional Zonal Zonal Zonal Zonal Zonal Zonal Zonal Zonal and Regional Zonal Zonal Zonal
    Zonal Zonal Zonal and Regional Zonal and Regional Zonal and Regional Zonal Zonal Zonal and Regional Zonal Zonal Zonal Zonal Zonal Zonal Zonal and Regional Zonal Zonal Zonal
    gVNIC and IDPF gVNIC and IDPF gVNIC and IDPF gVNIC and IDPF gVNIC gVNIC gVNIC gVNIC gVNIC and VirtIO-Net gVNIC and VirtIO-Net gVNIC and VirtIO-Net gVNIC and VirtIO-Net gVNIC gVNIC and VirtIO-Net gVNIC and IDPF gVNIC, IRDMA gVNIC gVNIC and VirtIO-Net gVNIC and VirtIO-Net IDPF gVNIC gVNIC gVNIC and VirtIO-Net gVNIC and VirtIO-Net gVNIC and VirtIO-Net IDPF and MRDMA gVNIC and MRDMA gVNIC and MRDMA gVNIC and MRDMA gVNIC gVNIC and VirtIO-Net gVNIC gVNIC and VirtIO-Net
    10 to 100 Gbps 10 to 50 Gbps 10 to 100 Gbps 23 to 100 Gbps 20 to 100 Gbps 10 to 50 Gbps Up to 50 Gbps 10 to 50 Gbps 10 to 32 Gbps 10 to 32 Gbps 2 to 32 Gbps 10 to 32 Gbps 10 to 32 Gbps 1 to 16 Gbps 23 to 100 Gbps up to 200 Gbps up to 200 Gbps 10 to 32 Gbps 10 to 32 Gbps up to 100 Gbps 16 to 100 Gbps up to 32 Gbps up to 32 Gbps up to 32 Gbps 2 to 32 Gbps up to 3,600 Gbps up to 2,000 Gbps up to 3,600 Gbps up to 3,200 Gbps up to 1,800 Gbps 24 to 100 Gbps 20 to 400 Gbps 10 to 100 Gbps
    50 to 200 Gbps 50 to 100 Gbps 50 to 200 Gbps 50 to 200 Gbps 50 to 200 Gbps 50 to 100 Gbps 50 to 100 Gbps 50 to 200 Gbps 50 to 100 Gbps 50 to 100 Gbps 50 to 100 Gbps 50 to 100 Gbps
    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 4 4 8 8 8 16 8 8
    discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts Only at GA discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts
    discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts Only at GA and for the new CUD model discounts Only for the new CUD model discounts discounts discounts discounts Only for the new CUD model discounts Only for the new CUD model discounts Only for the new CUD model discounts Only for the new CUD model discounts discounts discounts discounts discounts discounts discounts discounts discounts discounts

    GPUs and compute instances

    GPUs are used to accelerate workloads, and are supported for A4X Max, A4X, A4, A3, A2, G4, G2, and N1 instances. For instances that use A4X Max, A4X, A4, A3, A2, G4, or G2 machine types, the GPUs are automatically attached when you create the instance. For instances that use N1 machine types, you can attach GPUs to the instance during or after instance creation. GPUs can't be used with any other machine series.

    Accelerator-optimized instances have a fixed number of GPUs, vCPUs and memory per machine type, with the exception of G2 machines that offer a custom memory range. N1 instances with fewer GPUs attached are limited to a maximum number of vCPUs. In general, a higher number of GPUs lets you create instances with a higher number of vCPUs and memory.

    For more information, see GPUs on Compute Engine.

    What's next

  • Learn how to create and start a VM.

  • Learn how to create a VM with a custom machine type.

  • Complete the Quickstart using a Linux VM.

  • Complete the Quickstart using a Windows VM.

  • Learn more about attaching block storage to your VMs.