This document describes the machine families, machine series, and machine types
that you can choose from to create a virtual machine (VM) instance with the
resources you need. When you create a VM, you select a machine type from a
machine family that determines the resources available to that VM. There are
several machine families you can choose from and each machine family is further
organized into machine series and predefined machine types within each series.
For example, within the N2 series in the general-purpose machine family, you can
n2-standard-4 machine type.
All machine series support preemptible VMs, with the exception of the M2 machine series.
- General-purpose —best price-performance ratio for a variety of workloads.
- Compute-optimized —highest performance per core on Compute Engine and optimized for compute-intensive workloads.
- Memory-optimized —ideal for memory-intensive workloads, offering more memory per core than other machine families, with up to 12 TB of memory.
- Accelerator-optimized —ideal for massively parallelized Compute Unified Device Architecture (CUDA) compute workloads, such as machine learning (ML) and high performance computing (HPC). This family is the best option for workloads that require GPUs.
In summary, this document describes the following terms:
Machine family: A curated set of processor and hardware configurations optimized for specific workloads. When you create a VM instance, you choose a predefined or custom machine type from your preferred machine family.
Series: Machine families are further classified by series and generation. For example, the N1 series within the general-purpose machine types is the older version of the N2 series. Generally, generations of a machine series use a higher number to describe the newer generation. For example, the N2 series is the newer generation of the N1 series.
Machine type: Every machine series has predefined machine types that provide a set of resources for your VM. If a predefined machine type does not meet your needs, you can also create a custom machine type.
Try it for yourself
If you're new to Google Cloud, create an account to evaluate how Compute Engine performs in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.Try Compute Engine free
You are billed for the resources that a VM instance uses. VMs are billed as described in the VM instance pricing page. Specifically, you are billed for each vCPU and GB of memory individually, as described in resource-based billing model. Applicable discounts, such as sustained use discounts and committed use discounts apply.
To see the calculated hourly and monthly cost for each machine type, see VM instance pricing.
Machine family categories
The general-purpose machine family offers several machine series with the best price-performance ratio for a variety of workloads.
- Cost-optimized E2 machine series has up to 32 vCPUs with up to 128 GB of memory with a maximum of 8 GB per vCPU. The E2 machine series has a predefined CPU platform, running either an Intel processor or the second generation AMD EPYC Rome processor. The processor is selected for you when you create the VM. This machine series provides a variety of compute resources for the lowest price on Compute Engine, especially when paired with committed-use discounts.
- N2 machine series has up to 128 vCPUs, 8 GB of memory per vCPU, and is available on the Intel Ice Lake and Cascade Lake CPU platforms.
- N2D machine series has up to 224 vCPUs, 8 GB of memory per vCPU, and is available on second generation AMD EPYC Rome and third generation AMD EPYC Milan platforms.
- Tau T2D machine series has up to 60 vCPUs, 4 GB of memory per vCPU, and is available on third generation AMD EPYC Milan processors. The Tau T2D machine series has cluster-threading disabled, therefore a vCPU is equivalent to an entire core.
- N1 machine series have up to 96 vCPUs, 6.5 GB of memory per vCPU, and are available on Intel Sandy Bridge, Ivy Bridge, Haswell, Broadwell, and Skylake CPU platforms.
The E2 and N1 series are shared-core machine series. Machine types in these series timeshare a physical core which can be a cost-effective method for running small, non-resource intensive apps.
E2: offers 2 vCPUs for short periods of bursting.
g1-smallshared-core machine types which have up to 1 vCPU available for short periods of bursting.
The compute-optimized machine family has the highest performance per core on Compute Engine and is optimized for compute-intensive workloads. Machine series in this family runs on an Intel Scalable Processor (Cascade Lake) and can sustain up to 3.8 GHz all-core turbo.
- C2 VMs offer up to 60 vCPUs, 4 GB of memory per vCPU, and are available on the Intel Cascade Lake CPU platform.
- C2D VMs offer up to 112 vCPUs, 4 GB of memory per vCPU, and are available on the third generation AMD EPYC Milan platform.
The memory-optimized machine family has machine series that are ideal for memory-intensive workloads. This family offers more memory per core than any other machine family, with up to 12 TB of memory.
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 family is the optimal choice for workloads that require GPUs.
Machine family and series recommendations
The following table provides recommendations for different workloads.
|General-purpose workloads||Optimized workloads|
|E2||N2, N2D, N1||Tau T2D||M2, M1||C2, C2D||A2|
|Day-to-day computing at a lower cost||Balanced price/performance across a wide range of VM shapes||Best performance/cost for scale-out workloads||Ultra high-memory workloads||Ultra high performance for compute-intensive workloads||Optimized for high performance computing workloads|
See VM recommendations to learn about selecting the right machine type for your workload.
After you create a VM, you can use rightsizing recommendations to optimize resource utilization. For more information, see Applying machine type recommendations for VM instances.
Machine series comparison
Use the following table to compare each machine family and determine which one is appropriate for your workload. If, after reviewing this section, you are still unsure which family is best for your workload, start with the general-purpose machine family. See CPU platforms for details about all supported processors.
To learn how your selection affects the performance of persistent disks attached to your VMs, see Configuring your persistent disks and VMs.
|Machine series||vCPUs||Memory (per vCPU)||Processors||Custom VMs||Local SSDs||Sustained-use discounts||Preemptible VMs|
|E2* General-purpose||2–32||0.5–8 GB†||
|E2* shared-core||0.25–1||0.5–8 GB||
|N2 General-purpose||2–128||0.5–8 GB||
|N2D‡ General-purpose||2–224||0.5–8 GB||
|T2D General-purpose||1–60||4 GB||
|N1 General-purpose||1–96||0.95–6.5 GB||
|N1 shared-core||0.2–0.5||3.0–3.4 GB||
|C2 Compute-optimized||4–60||4 GB||
|C2D Compute-optimized||2–112||4 GB||
|M1 Memory-optimized megamem||96||14.9 GB||
|M1 Memory-optimized ultramem||40–160||28.3 GB||
|M2 Memory-optimized ultramem||208–416||28.3 GB||
|A2 Accelerator-optimized high-gpu||12–96||7 GB||
|A2 Accelerator-optimized mega-gpu||96||14 GB||
†E2 VMs support up to 128 GB of memory total.
‡N2D standard and high-CPU VMs have up to 224 vCPUs.
GPUs and VMs
VMs with lower numbers of GPUs 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.
- Creating and starting a VM instance
- Creating a VM instance with a custom machine type.
- Quickstart using a Linux VM
- Quickstart using a Windows VM
- Learn more about attaching block storage to your VMs.