General purpose instances - Amazon Elastic Compute Cloud

General purpose instances

Note

For detailed instance type specifications, see the Amazon EC2 Instance Types Guide. For pricing information, see Amazon EC2 Instance Types.

General purpose instances provide a balance of compute, memory, and networking resources, and can be used for a wide range of workloads.

A1 instances

These instances are ideally suited for scale-out workloads that are supported by the Arm ecosystem. These instances are well-suited for the following:

  • Web servers

  • Containerized microservices

M5 and M5a instances

These instances provide an ideal cloud infrastructure, offering a balance of compute, memory, and networking resources for a broad range of applications that are deployed in the cloud. They are well-suited for the following:

  • Small and midsize databases

  • Data processing tasks that require additional memory

  • Caching fleets

  • Backend servers for SAP, Microsoft SharePoint, cluster computing, and other enterprise applications

For more information, see Amazon EC2 M5 Instances.

Bare metal instances, such as m5.metal, m5n.metal, and m5zn.metal provide your applications with direct access to physical resources of the host server, such as processors and memory.

M5zn

These instances are ideal for applications that benefit from extremely high single-thread performance, high throughput, and low latency networking. They are well-suited for the following:

  • Gaming

  • High performance computing

  • Simulation modeling

For more information, see Amazon EC2 M5 Instances.

M6g and M6gd instances

These instances are powered by AWS Graviton2 processors and deliver balanced compute, memory, and networking for a broad range a general purpose workloads. They are well suited for the following:

  • Application servers

  • Microservices

  • Gaming servers

  • Midsize data stores

  • Caching fleets

Bare metal instances such as m6g.metal provide your applications with direct access to physical resources of the host server, such as processors and memory. For more information, see Amazon EC2 M6g Instances.

M6i and M6id instances

These instances are well suited for general-purpose workloads such as the following:

  • Application servers and web servers

  • Microservices

  • High performance computing

  • App development

  • Small and midsize databases

  • Caching fleets

Bare metal instances such as m6i.metal provide your applications with direct access to physical resources of the host server, such as processors and memory.

For more information, see Amazon EC2 M6i Instances.

M6in and M6idn instances

These instances are well suited for network-intensive workloads such as the following:

  • High-performance file systems

  • Distributed web scale in-memory caches

  • Caching fleets

  • Real-time big data analytics

  • Telco applications such as 5G User Plane Function (UPF)

For more information, see Amazon EC2 M6i Instances.

M7i instances

M7i instances expand the seventh generation Amazon EC2 instance portfolio to include x86-based options. These instances are powered by custom 4th generation Intel Xeon Scalable Processors (Sapphire Rapids) that are exclusive to AWS. They deliver up to 15 percent improvement in price-performance compared to M6i instances. M7i instances are a good fit for running general-purpose workloads, such as web-servers, application servers, micro-services, and small data stores.

For more information, see Amazon EC2 M7i instances.

M7i-flex instances

A majority of general-purpose workloads benefit from the latest generation performance but do not fully utilize the compute resources. Amazon EC2 flex instances are an ideal first choice to run such workloads. Flex instances are cost-optimized variants of Amazon EC2 instances that provide the easiest way for you to get price performance benefits and lower prices for a majority of common workloads.

M7i-flex instances are the first Amazon EC2 flex instances that are based on the 4th generation Intel Xeon Scalable processors (Sapphire Rapids), and can save costs when compared to equivalent M instances. M7i-flex instances offer up to 32 vCPUs and up to 128 GiB of memory to deliver a balance of compute, memory, and networking resources. These instances are well suited for general purpose workloads such as the following:

  • Application servers and web servers

  • Microservices

  • Virtual desktops

  • App development

  • Databases

  • Mobile applications

  • Batch workloads

For more information, see Amazon EC2 M7i and M7i-flex instances.

M7g and M7gd instances

These instances are powered by AWS Graviton3 processors and deliver balanced compute, memory, and networking for a broad range a general purpose workloads. They are well suited for the following:

  • Application servers

  • Microservices

  • Gaming servers

  • Midsize data stores

  • Caching fleets

For more information, see Amazon EC2 M7g instances.

M7a instances

M7a instances are built on the AWS Nitro System and are ideal for applications that benefit from high performance and high throughput, low latency networking, such as application servers, microservices, gaming servers, mid-size data stores, application development environments, and caching fleets.

For more information, see Amazon EC2 M7a Instances.

x86-based and Apple silicon (M1, M2, and M2 Pro) Mac instances

EC2 Mac instances are ideal for developing, building, testing, and signing applications for Apple platforms, such as iPhone, iPad, Mac, Vision Pro, Apple Watch, Apple TV, and Safari.

For more information, see Amazon EC2 Mac instances.

T2, T3, T3a, and T4g instances

These instances provide a baseline level of CPU performance with the ability to burst to a higher level when required by your workload. An Unlimited instance can sustain high CPU performance for any period of time whenever required. For more information, see Burstable performance instances. They are well-suited for the following:

  • Websites and web applications

  • Code repositories

  • Development, build, test, and staging environments

  • Microservices

For more information, see Amazon EC2 T2 Instances, Amazon EC2 T3 Instances, and Amazon EC2 T4g Instances.

Hardware specifications

The following is a summary of the hardware specifications for general purpose instances. A virtual central processing unit (vCPU) represents a portion of the physical CPU assigned to a virtual machine (VM). For x86 instances, there are two vCPUs per core. For Graviton instances, there is one vCPU per core.

Instance type Default vCPUs Memory (GiB)
a1.medium 1 2.00
a1.large 2 4.00
a1.xlarge 4 8.00
a1.2xlarge 8 16.00
a1.4xlarge 16 32.00
a1.metal 16 32.00
m1.small 1 1.70
m1.medium 1 3.70
m1.large 2 7.50
m1.xlarge 4 15.00
m2.xlarge 2 17.10
m2.2xlarge 4 34.20
m2.4xlarge 8 68.40
m3.medium 1 3.75
m3.large 2 7.50
m3.xlarge 4 15.00
m3.2xlarge 8 30.00
m4.large 2 8.00
m4.xlarge 4 16.00
m4.2xlarge 8 32.00
m4.4xlarge 16 64.00
m4.10xlarge 40 160.00
m4.16xlarge 64 256.00
m5.large 2 8.00
m5.xlarge 4 16.00
m5.2xlarge 8 32.00
m5.4xlarge 16 64.00
m5.8xlarge 32 128.00
m5.12xlarge 48 192.00
m5.16xlarge 64 256.00
m5.24xlarge 96 384.00
m5.metal 96 384.00
m5a.large 2 8.00
m5a.xlarge 4 16.00
m5a.2xlarge 8 32.00
m5a.4xlarge 16 64.00
m5a.8xlarge 32 128.00
m5a.12xlarge 48 192.00
m5a.16xlarge 64 256.00
m5a.24xlarge 96 384.00
m5ad.large 2 8.00
m5ad.xlarge 4 16.00
m5ad.2xlarge 8 32.00
m5ad.4xlarge 16 64.00
m5ad.8xlarge 32 128.00
m5ad.12xlarge 48 192.00
m5ad.16xlarge 64 256.00
m5ad.24xlarge 96 384.00
m5d.large 2 8.00
m5d.xlarge 4 16.00
m5d.2xlarge 8 32.00
m5d.4xlarge 16 64.00
m5d.8xlarge 32 128.00
m5d.12xlarge 48 192.00
m5d.16xlarge 64 256.00
m5d.24xlarge 96 384.00
m5d.metal 96 384.00
m5dn.large 2 8.00
m5dn.xlarge 4 16.00
m5dn.2xlarge 8 32.00
m5dn.4xlarge 16 64.00
m5dn.8xlarge 32 128.00
m5dn.12xlarge 48 192.00
m5dn.16xlarge 64 256.00
m5dn.24xlarge 96 384.00
m5dn.metal 96 384.00
m5n.large 2 8.00
m5n.xlarge 4 16.00
m5n.2xlarge 8 32.00
m5n.4xlarge 16 64.00
m5n.8xlarge 32 128.00
m5n.12xlarge 48 192.00
m5n.16xlarge 64 256.00
m5n.24xlarge 96 384.00
m5n.metal 96 384.00
m5zn.large 2 8.00
m5zn.xlarge 4 16.00
m5zn.2xlarge 8 32.00
m5zn.3xlarge 12 48.00
m5zn.6xlarge 24 96.00
m5zn.12xlarge 48 192.00
m5zn.metal 48 192.00
m6a.large 2 8.00
m6a.xlarge 4 16.00
m6a.2xlarge 8 32.00
m6a.4xlarge 16 64.00
m6a.8xlarge 32 128.00
m6a.12xlarge 48 192.00
m6a.16xlarge 64 256.00
m6a.24xlarge 96 384.00
m6a.32xlarge 128 512.00
m6a.48xlarge 192 768.00
m6a.metal 192 768.00
m6g.medium 1 4.00
m6g.large 2 8.00
m6g.xlarge 4 16.00
m6g.2xlarge 8 32.00
m6g.4xlarge 16 64.00
m6g.8xlarge 32 128.00
m6g.12xlarge 48 192.00
m6g.16xlarge 64 256.00
m6g.metal 64 256.00
m6gd.medium 1 4.00
m6gd.large 2 8.00
m6gd.xlarge 4 16.00
m6gd.2xlarge 8 32.00
m6gd.4xlarge 16 64.00
m6gd.8xlarge 32 128.00
m6gd.12xlarge 48 192.00
m6gd.16xlarge 64 256.00
m6gd.metal 64 256.00
m6i.large 2 8.00
m6i.xlarge 4 16.00
m6i.2xlarge 8 32.00
m6i.4xlarge 16 64.00
m6i.8xlarge 32 128.00
m6i.12xlarge 48 192.00
m6i.16xlarge 64 256.00
m6i.24xlarge 96 384.00
m6i.32xlarge 128 512.00
m6i.metal 128 512.00
m6id.large 2 8.00
m6id.xlarge 4 16.00
m6id.2xlarge 8 32.00
m6id.4xlarge 16 64.00
m6id.8xlarge 32 128.00
m6id.12xlarge 48 192.00
m6id.16xlarge 64 256.00
m6id.24xlarge 96 384.00
m6id.32xlarge 128 512.00
m6id.metal 128 512.00
m6idn.large 2 8.00
m6idn.xlarge 4 16.00
m6idn.2xlarge 8 32.00
m6idn.4xlarge 16 64.00
m6idn.8xlarge 32 128.00
m6idn.12xlarge 48 192.00
m6idn.16xlarge 64 256.00
m6idn.24xlarge 96 384.00
m6idn.32xlarge 128 512.00
m6idn.metal 128 512.00
m6in.large 2 8.00
m6in.xlarge 4 16.00
m6in.2xlarge 8 32.00
m6in.4xlarge 16 64.00
m6in.8xlarge 32 128.00
m6in.12xlarge 48 192.00
m6in.16xlarge 64 256.00
m6in.24xlarge 96 384.00
m6in.32xlarge 128 512.00
m6in.metal 128 512.00
m7a.medium 1 4.00
m7a.large 2 8.00
m7a.xlarge 4 16.00
m7a.2xlarge 8 32.00
m7a.4xlarge 16 64.00
m7a.8xlarge 32 128.00
m7a.12xlarge 48 192.00
m7a.16xlarge 64 256.00
m7a.24xlarge 96 384.00
m7a.32xlarge 128 512.00
m7a.48xlarge 192 768.00
m7a.metal-48xl 192 768.00
m7g.medium 1 4.00
m7g.large 2 8.00
m7g.xlarge 4 16.00
m7g.2xlarge 8 32.00
m7g.4xlarge 16 64.00
m7g.8xlarge 32 128.00
m7g.12xlarge 48 192.00
m7g.16xlarge 64 256.00
m7g.metal 64 256.00
m7gd.medium 1 4.00
m7gd.large 2 8.00
m7gd.xlarge 4 16.00
m7gd.2xlarge 8 32.00
m7gd.4xlarge 16 64.00
m7gd.8xlarge 32 128.00
m7gd.12xlarge 48 192.00
m7gd.16xlarge 64 256.00
m7gd.metal 64 256.00
m7i.large 2 8.00
m7i.xlarge 4 16.00
m7i.2xlarge 8 32.00
m7i.4xlarge 16 64.00
m7i.8xlarge 32 128.00
m7i.12xlarge 48 192.00
m7i.16xlarge 64 256.00
m7i.24xlarge 96 384.00
m7i.48xlarge 192 768.00
m7i.metal-24xl 96 384.00
m7i.metal-48xl 192 768.00
m7i-flex.large 2 8.00
m7i-flex.xlarge 4 16.00
m7i-flex.2xlarge 8 32.00
m7i-flex.4xlarge 16 64.00
m7i-flex.8xlarge 32 128.00
mac1.metal 12 32.00
mac2.metal 8 16.00
mac2-m2.metal 8 24.00
mac2-m2pro.metal 12 32.00
t1.micro 1 0.61
t2.nano 1 0.50
t2.micro 1 1.00
t2.small 1 2.00
t2.medium 2 4.00
t2.large 2 8.00
t2.xlarge 4 16.00
t2.2xlarge 8 32.00
t3.nano 2 0.50
t3.micro 2 1.00
t3.small 2 2.00
t3.medium 2 4.00
t3.large 2 8.00
t3.xlarge 4 16.00
t3.2xlarge 8 32.00
t3a.nano 2 0.50
t3a.micro 2 1.00
t3a.small 2 2.00
t3a.medium 2 4.00
t3a.large 2 8.00
t3a.xlarge 4 16.00
t3a.2xlarge 8 32.00
t4g.nano 2 0.50
t4g.micro 2 1.00
t4g.small 2 2.00
t4g.medium 2 4.00
t4g.large 2 8.00
t4g.xlarge 4 16.00
t4g.2xlarge 8 32.00

The general purpose instances use the following processors.

AWS Graviton processors
  • AWS Graviton2: M6g, M6gd, T4g

  • AWS Graviton3: M7g, M7gd

AMD processors
  • AMD EPYC 7000 series processors (AMD EPYC 7571): M5a, M5ad, T3a

  • 3rd generation AMD EPYC processors (AMD EPYC 7R13): M6a

  • 4th generation AMD EPYC processors (AMD EPYC 9R14): M7a

Intel processors
  • Intel Xeon Scalable processors (Haswell E5-2676 v3 or Broadwell E5-2686 v4): M4, T2

  • Intel Xeon Scalable processors (Skylake 8175M or Cascade Lake 8259CL): M5, M5d, T3

  • 2nd generation Intel Xeon Scalable processors (Cascade Lake 8259CL): M5n

  • 2nd generation Intel Xeon Scalable processors (Cascade Lake 8252C): M5zn

  • 3rd generation Intel Xeon Scalable processors (Ice Lake 8375C): M6i, M6id

  • 4th generation Intel Xeon Scalable processors (Sapphire Rapids 8488C): M7i, M7i-flex

For detailed instance type specifications, see the Amazon EC2 Instance Types Guide. For pricing information, see Amazon EC2 Instance Types.

Instance performance

EBS-optimized instances enable you to get consistently high performance for your EBS volumes by eliminating contention between Amazon EBS I/O and other network traffic from your instance. Some general purpose instances are EBS-optimized by default at no additional cost. For more information, see Amazon EBS–optimized instances.

Some general purpose instance types provide the ability to control processor C-states and P-states on Linux. C-states control the sleep levels that a core can enter when it is inactive, while P-states control the desired performance (in CPU frequency) from a core. For more information, see Processor state control for your EC2 instance.

Flex instance performance

M7i-flex instances offer a balance of compute, memory, and network resources, and they provide the most cost-effective way to run a broad spectrum of general purpose applications. M7i-flex instances provide reliable CPU resources to deliver a baseline CPU performance of 40 percent, which is designed to meet the compute requirements for a majority of general purpose workloads. For times when workloads need more performance, M7i-flex instances provide the ability to exceed baseline CPU and deliver up to 100 percent CPU for 95 percent of the time over a 24-hour window.

M7i-flex instances running at a high CPU utilization that is consistently above the baseline for long periods of time might see a gradual reduction in the maximum burst CPU throughput.

Network performance

You can enable enhanced networking on supported instance types to provide lower latencies, lower network jitter, and higher packet-per-second (PPS) performance. Most applications do not consistently need a high level of network performance, but can benefit from access to increased bandwidth when they send or receive data. For more information, see Enhanced networking on Linux.

The following is a summary of network performance for general purpose instances that support enhanced networking.

Note

Instance types indicated with a have a baseline bandwidth and can use a network I/O credit mechanism to burst beyond their baseline bandwidth on a best effort basis. For more information, see instance network bandwidth.

Instance type Network performance Enhanced networking features
a1.medium Up to 10 Gigabit ENA
a1.large Up to 10 Gigabit ENA
a1.xlarge Up to 10 Gigabit ENA
a1.2xlarge Up to 10 Gigabit ENA
a1.4xlarge Up to 10 Gigabit ENA
a1.metal Up to 10 Gigabit ENA
m1.small Low Not supported
m1.medium Moderate Not supported
m1.large Moderate Not supported
m1.xlarge High Not supported
m2.xlarge Moderate Not supported
m2.2xlarge Moderate Not supported
m2.4xlarge High Not supported
m3.medium Moderate Not supported
m3.large Moderate Not supported
m3.xlarge High Not supported
m3.2xlarge High Not supported
m4.large Moderate Intel 82599 VF
m4.xlarge High Intel 82599 VF
m4.2xlarge High Intel 82599 VF
m4.4xlarge High Intel 82599 VF
m4.10xlarge 10 Gigabit Intel 82599 VF
m4.16xlarge 25 Gigabit ENA
m5.large Up to 10 Gigabit ENA
m5.xlarge Up to 10 Gigabit ENA
m5.2xlarge Up to 10 Gigabit ENA
m5.4xlarge Up to 10 Gigabit ENA
m5.8xlarge 10 Gigabit ENA
m5.12xlarge 12 Gigabit ENA
m5.16xlarge 20 Gigabit ENA
m5.24xlarge 25 Gigabit ENA
m5.metal 25 Gigabit ENA
m5a.large Up to 10 Gigabit ENA
m5a.xlarge Up to 10 Gigabit ENA
m5a.2xlarge Up to 10 Gigabit ENA
m5a.4xlarge Up to 10 Gigabit ENA
m5a.8xlarge Up to 10 Gigabit ENA
m5a.12xlarge 10 Gigabit ENA
m5a.16xlarge 12 Gigabit ENA
m5a.24xlarge 20 Gigabit ENA
m5ad.large Up to 10 Gigabit ENA
m5ad.xlarge Up to 10 Gigabit ENA
m5ad.2xlarge Up to 10 Gigabit ENA
m5ad.4xlarge Up to 10 Gigabit ENA
m5ad.8xlarge Up to 10 Gigabit ENA
m5ad.12xlarge 10 Gigabit ENA
m5ad.16xlarge 12 Gigabit ENA
m5ad.24xlarge 20 Gigabit ENA
m5d.large Up to 10 Gigabit ENA
m5d.xlarge Up to 10 Gigabit ENA
m5d.2xlarge Up to 10 Gigabit ENA
m5d.4xlarge Up to 10 Gigabit ENA
m5d.8xlarge 10 Gigabit ENA
m5d.12xlarge 12 Gigabit ENA
m5d.16xlarge 20 Gigabit ENA
m5d.24xlarge 25 Gigabit ENA
m5d.metal 25 Gigabit ENA
m5dn.large Up to 25 Gigabit ENA
m5dn.xlarge Up to 25 Gigabit ENA
m5dn.2xlarge Up to 25 Gigabit ENA
m5dn.4xlarge Up to 25 Gigabit ENA
m5dn.8xlarge 25 Gigabit ENA
m5dn.12xlarge 50 Gigabit ENA
m5dn.16xlarge 75 Gigabit ENA
m5dn.24xlarge 100 Gigabit ENA | EFA
m5dn.metal 100 Gigabit ENA | EFA
m5n.large Up to 25 Gigabit ENA
m5n.xlarge Up to 25 Gigabit ENA
m5n.2xlarge Up to 25 Gigabit ENA
m5n.4xlarge Up to 25 Gigabit ENA
m5n.8xlarge 25 Gigabit ENA
m5n.12xlarge 50 Gigabit ENA
m5n.16xlarge 75 Gigabit ENA
m5n.24xlarge 100 Gigabit ENA | EFA
m5n.metal 100 Gigabit ENA | EFA
m5zn.large Up to 25 Gigabit ENA
m5zn.xlarge Up to 25 Gigabit ENA
m5zn.2xlarge Up to 25 Gigabit ENA
m5zn.3xlarge Up to 25 Gigabit ENA
m5zn.6xlarge 50 Gigabit ENA
m5zn.12xlarge 100 Gigabit ENA | EFA
m5zn.metal 100 Gigabit ENA | EFA
m6a.large Up to 12.5 Gigabit ENA
m6a.xlarge Up to 12.5 Gigabit ENA
m6a.2xlarge Up to 12.5 Gigabit ENA
m6a.4xlarge Up to 12.5 Gigabit ENA
m6a.8xlarge 12.5 Gigabit ENA
m6a.12xlarge 18.75 Gigabit ENA
m6a.16xlarge 25 Gigabit ENA
m6a.24xlarge 37.5 Gigabit ENA
m6a.32xlarge 50 Gigabit ENA
m6a.48xlarge 50 Gigabit ENA | EFA
m6a.metal 50 Gigabit ENA | EFA
m6g.medium Up to 10 Gigabit ENA
m6g.large Up to 10 Gigabit ENA
m6g.xlarge Up to 10 Gigabit ENA
m6g.2xlarge Up to 10 Gigabit ENA
m6g.4xlarge Up to 10 Gigabit ENA
m6g.8xlarge 12 Gigabit ENA
m6g.12xlarge 20 Gigabit ENA
m6g.16xlarge 25 Gigabit ENA
m6g.metal 25 Gigabit ENA
m6gd.medium Up to 10 Gigabit ENA
m6gd.large Up to 10 Gigabit ENA
m6gd.xlarge Up to 10 Gigabit ENA
m6gd.2xlarge Up to 10 Gigabit ENA
m6gd.4xlarge Up to 10 Gigabit ENA
m6gd.8xlarge 12 Gigabit ENA
m6gd.12xlarge 20 Gigabit ENA
m6gd.16xlarge 25 Gigabit ENA
m6gd.metal 25 Gigabit ENA
m6i.large Up to 12.5 Gigabit ENA
m6i.xlarge Up to 12.5 Gigabit ENA
m6i.2xlarge Up to 12.5 Gigabit ENA
m6i.4xlarge Up to 12.5 Gigabit ENA
m6i.8xlarge 12.5 Gigabit ENA
m6i.12xlarge 18.75 Gigabit ENA
m6i.16xlarge 25 Gigabit ENA
m6i.24xlarge 37.5 Gigabit ENA
m6i.32xlarge 50 Gigabit ENA | EFA
m6i.metal 50 Gigabit ENA | EFA
m6id.large Up to 12.5 Gigabit ENA
m6id.xlarge Up to 12.5 Gigabit ENA
m6id.2xlarge Up to 12.5 Gigabit ENA
m6id.4xlarge Up to 12.5 Gigabit ENA
m6id.8xlarge 12.5 Gigabit ENA
m6id.12xlarge 18.75 Gigabit ENA
m6id.16xlarge 25 Gigabit ENA
m6id.24xlarge 37.5 Gigabit ENA
m6id.32xlarge 50 Gigabit ENA | EFA
m6id.metal 50 Gigabit ENA | EFA
m6idn.large Up to 25 Gigabit ENA
m6idn.xlarge Up to 30 Gigabit ENA
m6idn.2xlarge Up to 40 Gigabit ENA
m6idn.4xlarge Up to 50 Gigabit ENA
m6idn.8xlarge 50 Gigabit ENA
m6idn.12xlarge 75 Gigabit ENA
m6idn.16xlarge 100 Gigabit ENA
m6idn.24xlarge 150 Gigabit ENA
m6idn.32xlarge 200 Gigabit ENA | EFA
m6idn.metal 200 Gigabit ENA | EFA
m6in.large Up to 25 Gigabit ENA
m6in.xlarge Up to 30 Gigabit ENA
m6in.2xlarge Up to 40 Gigabit ENA
m6in.4xlarge Up to 50 Gigabit ENA
m6in.8xlarge 50 Gigabit ENA
m6in.12xlarge 75 Gigabit ENA
m6in.16xlarge 100 Gigabit ENA
m6in.24xlarge 150 Gigabit ENA
m6in.32xlarge 200 Gigabit ENA | EFA
m6in.metal 200 Gigabit ENA | EFA
m7a.medium Up to 12.5 Gigabit ENA
m7a.large Up to 12.5 Gigabit ENA
m7a.xlarge Up to 12.5 Gigabit ENA
m7a.2xlarge Up to 12.5 Gigabit ENA
m7a.4xlarge Up to 12.5 Gigabit ENA
m7a.8xlarge 12.5 Gigabit ENA
m7a.12xlarge 18.75 Gigabit ENA
m7a.16xlarge 25 Gigabit ENA
m7a.24xlarge 37.5 Gigabit ENA
m7a.32xlarge 50 Gigabit ENA
m7a.48xlarge 50 Gigabit ENA | EFA
m7a.metal-48xl 50 Gigabit ENA | EFA
m7g.medium Up to 12.5 Gigabit ENA
m7g.large Up to 12.5 Gigabit ENA
m7g.xlarge Up to 12.5 Gigabit ENA
m7g.2xlarge Up to 15 Gigabit ENA
m7g.4xlarge Up to 15 Gigabit ENA
m7g.8xlarge 15 Gigabit ENA
m7g.12xlarge 22.5 Gigabit ENA
m7g.16xlarge 30 Gigabit ENA | EFA
m7g.metal 30 Gigabit ENA | EFA
m7gd.medium Up to 12.5 Gigabit ENA
m7gd.large Up to 12.5 Gigabit ENA
m7gd.xlarge Up to 12.5 Gigabit ENA
m7gd.2xlarge Up to 15 Gigabit ENA
m7gd.4xlarge Up to 15 Gigabit ENA
m7gd.8xlarge 15 Gigabit ENA
m7gd.12xlarge 22.5 Gigabit ENA
m7gd.16xlarge 30 Gigabit ENA | EFA
m7gd.metal 30 Gigabit ENA | EFA
m7i.large Up to 12.5 Gigabit ENA
m7i.xlarge Up to 12.5 Gigabit ENA
m7i.2xlarge Up to 12.5 Gigabit ENA
m7i.4xlarge Up to 12.5 Gigabit ENA
m7i.8xlarge 12.5 Gigabit ENA
m7i.12xlarge 18.75 Gigabit ENA
m7i.16xlarge 25 Gigabit ENA
m7i.24xlarge 37.5 Gigabit ENA
m7i.48xlarge 50 Gigabit ENA | EFA
m7i.metal-24xl 37.5 Gigabit ENA
m7i.metal-48xl 50 Gigabit ENA | EFA
m7i-flex.large Up to 12.5 Gigabit ENA
m7i-flex.xlarge Up to 12.5 Gigabit ENA
m7i-flex.2xlarge Up to 12.5 Gigabit ENA
m7i-flex.4xlarge Up to 12.5 Gigabit ENA
m7i-flex.8xlarge Up to 12.5 Gigabit ENA
mac1.metal 25 Gigabit ENA
mac2.metal 10 Gigabit ENA
mac2-m2.metal 10 Gigabit ENA
mac2-m2pro.metal 10 Gigabit ENA
t1.micro Very Low Not supported
t2.nano Low to Moderate Not supported
t2.micro Low to Moderate Not supported
t2.small Low to Moderate Not supported
t2.medium Low to Moderate Not supported
t2.large Low to Moderate Not supported
t2.xlarge Moderate Not supported
t2.2xlarge Moderate Not supported
t3.nano Up to 5 Gigabit ENA
t3.micro Up to 5 Gigabit ENA
t3.small Up to 5 Gigabit ENA
t3.medium Up to 5 Gigabit ENA
t3.large Up to 5 Gigabit ENA
t3.xlarge Up to 5 Gigabit ENA
t3.2xlarge Up to 5 Gigabit ENA
t3a.nano Up to 5 Gigabit ENA
t3a.micro Up to 5 Gigabit ENA
t3a.small Up to 5 Gigabit ENA
t3a.medium Up to 5 Gigabit ENA
t3a.large Up to 5 Gigabit ENA
t3a.xlarge Up to 5 Gigabit ENA
t3a.2xlarge Up to 5 Gigabit ENA
t4g.nano Up to 5 Gigabit ENA
t4g.micro Up to 5 Gigabit ENA
t4g.small Up to 5 Gigabit ENA
t4g.medium Up to 5 Gigabit ENA
t4g.large Up to 5 Gigabit ENA
t4g.xlarge Up to 5 Gigabit ENA
t4g.2xlarge Up to 5 Gigabit ENA

For 32xlarge and metal instance types that support 200 Gbps, at least 2 ENIs, each attached to a different network card, are required on the instance to achieve 200 Gbps throughput. Each ENI attached to a network card can achieve a max of 170 Gbps.

The following table shows the baseline and burst bandwidth for instance types that use the network I/O credit mechanism to burst beyond their baseline bandwidth.

Instance type Baseline bandwidth (Gbps) Burst bandwidth (Gbps)
a1.medium 0.5 10.0
a1.large 0.75 10.0
a1.xlarge 1.25 10.0
a1.2xlarge 2.5 10.0
a1.4xlarge 5.0 10.0
a1.metal 5.0 10.0
m5.large 0.75 10.0
m5.xlarge 1.25 10.0
m5.2xlarge 2.5 10.0
m5.4xlarge 5.0 10.0
m5a.large 0.75 10.0
m5a.xlarge 1.25 10.0
m5a.2xlarge 2.5 10.0
m5a.4xlarge 5.0 10.0
m5a.8xlarge 7.5 10.0
m5ad.large 0.75 10.0
m5ad.xlarge 1.25 10.0
m5ad.2xlarge 2.5 10.0
m5ad.4xlarge 5.0 10.0
m5ad.8xlarge 7.5 10.0
m5d.large 0.75 10.0
m5d.xlarge 1.25 10.0
m5d.2xlarge 2.5 10.0
m5d.4xlarge 5.0 10.0
m5dn.large 2.1 25.0
m5dn.xlarge 4.1 25.0
m5dn.2xlarge 8.125 25.0
m5dn.4xlarge 16.25 25.0
m5n.large 2.1 25.0
m5n.xlarge 4.1 25.0
m5n.2xlarge 8.125 25.0
m5n.4xlarge 16.25 25.0
m5zn.large 3.0 25.0
m5zn.xlarge 5.0 25.0
m5zn.2xlarge 10.0 25.0
m5zn.3xlarge 15.0 25.0
m6a.large 0.781 12.5
m6a.xlarge 1.562 12.5
m6a.2xlarge 3.125 12.5
m6a.4xlarge 6.25 12.5
m6g.medium 0.5 10.0
m6g.large 0.75 10.0
m6g.xlarge 1.25 10.0
m6g.2xlarge 2.5 10.0
m6g.4xlarge 5.0 10.0
m6gd.medium 0.5 10.0
m6gd.large 0.75 10.0
m6gd.xlarge 1.25 10.0
m6gd.2xlarge 2.5 10.0
m6gd.4xlarge 5.0 10.0
m6i.large 0.781 12.5
m6i.xlarge 1.562 12.5
m6i.2xlarge 3.125 12.5
m6i.4xlarge 6.25 12.5
m6id.large 0.781 12.5
m6id.xlarge 1.562 12.5
m6id.2xlarge 3.125 12.5
m6id.4xlarge 6.25 12.5
m6idn.large 3.125 25.0
m6idn.xlarge 6.25 30.0
m6idn.2xlarge 12.5 40.0
m6idn.4xlarge 25.0 50.0
m6in.large 3.125 25.0
m6in.xlarge 6.25 30.0
m6in.2xlarge 12.5 40.0
m6in.4xlarge 25.0 50.0
m7a.medium 0.39 12.5
m7a.large 0.781 12.5
m7a.xlarge 1.562 12.5
m7a.2xlarge 3.125 12.5
m7a.4xlarge 6.25 12.5
m7g.medium 0.52 12.5
m7g.large 0.937 12.5
m7g.xlarge 1.876 12.5
m7g.2xlarge 3.75 15.0
m7g.4xlarge 7.5 15.0
m7gd.medium 0.52 12.5
m7gd.large 0.937 12.5
m7gd.xlarge 1.876 12.5
m7gd.2xlarge 3.75 15.0
m7gd.4xlarge 7.5 15.0
m7i.large 0.781 12.5
m7i.xlarge 1.562 12.5
m7i.2xlarge 3.125 12.5
m7i.4xlarge 6.25 12.5
m7i-flex.large 0.39 12.5
m7i-flex.xlarge 0.781 12.5
m7i-flex.2xlarge 1.562 12.5
m7i-flex.4xlarge 3.125 12.5
m7i-flex.8xlarge 6.25 12.5
t3.nano 0.032 5.0
t3.micro 0.064 5.0
t3.small 0.128 5.0
t3.medium 0.256 5.0
t3.large 0.512 5.0
t3.xlarge 1.024 5.0
t3.2xlarge 2.048 5.0
t3a.nano 0.032 5.0
t3a.micro 0.064 5.0
t3a.small 0.128 5.0
t3a.medium 0.256 5.0
t3a.large 0.512 5.0
t3a.xlarge 1.024 5.0
t3a.2xlarge 2.048 5.0
t4g.nano 0.032 5.0
t4g.micro 0.064 5.0
t4g.small 0.128 5.0
t4g.medium 0.256 5.0
t4g.large 0.512 5.0
t4g.xlarge 1.024 5.0
t4g.2xlarge 2.048 5.0

Amazon EBS I/O performance

Amazon EBS optimized instances use an optimized configuration stack and provide additional, dedicated capacity for Amazon EBS I/O. This optimization provides the best performance for your Amazon EBS volumes by minimizing contention between Amazon EBS I/O and other traffic from your instance.

For more information, see Amazon EBS–optimized instances.

SSD-based instance store volume I/O performance

If you use a Linux AMI with kernel version 4.4 or later and use all the SSD-based instance store volumes available to your instance, you can get up to the IOPS (4,096 byte block size) performance listed in the following table (at queue depth saturation). Otherwise, you get lower IOPS performance.

Instance Size 100% Random Read IOPS Write IOPS
m5ad.large 30000 15000
m5ad.xlarge 59000 29000
m5ad.2xlarge 117000 57000
m5ad.4xlarge 234000 114000
m5ad.8xlarge 466666 233334
m5ad.12xlarge 700000 340000
m5ad.16xlarge 933332 466668
m5ad.24xlarge 1400000 680000
m5d.large 30000 15000
m5d.xlarge 59000 29000
m5d.2xlarge 117000 57000
m5d.4xlarge 234000 114000
m5d.8xlarge 466666 233334
m5d.12xlarge 700000 340000
m5d.16xlarge 933332 466668
m5d.24xlarge 1400000 680000
m5d.metal 1400000 680000
m5dn.large 29000 14500
m5dn.xlarge 58000 29000
m5dn.2xlarge 116000 58000
m5dn.4xlarge 232000 116000
m5dn.8xlarge 464000 232000
m5dn.12xlarge 700000 350000
m5dn.16xlarge 930000 465000
m5dn.24xlarge 1400000 700000
m5dn.metal 1400000 700000
m6gd.medium 13438 5625
m6gd.large 26875 11250
m6gd.xlarge 53750 22500
m6gd.2xlarge 107500 45000
m6gd.4xlarge 215000 90000
m6gd.8xlarge 430000 180000
m6gd.12xlarge 645000 270000
m6gd.16xlarge 860000 360000
m6gd.metal 860000 360000
m6id.large 33542 16771
m6id.xlarge 67083 33542
m6id.2xlarge 134167 67084
m6id.4xlarge 268333 134167
m6id.8xlarge 536666 268334
m6id.12xlarge 804998 402500
m6id.16xlarge 1073332 536668
m6id.24xlarge 1609996 805000
m6id.32xlarge 2146664 1073336
m6id.metal 2146664 1073336
m6idn.large 33542 16771
m6idn.xlarge 67083 33542
m6idn.2xlarge 134167 67084
m6idn.4xlarge 268333 134167
m6idn.8xlarge 536666 268334
m6idn.12xlarge 804998 402500
m6idn.16xlarge 1073332 536668
m6idn.24xlarge 1609996 805000
m6idn.32xlarge 2146664 1073336
m6idn.metal 2146664 1073336
m7gd.medium 16771 8385
m7gd.large 33542 16771
m7gd.xlarge 67083 33542
m7gd.2xlarge 134167 67084
m7gd.4xlarge 268333 134167
m7gd.8xlarge 536666 268334
m7gd.12xlarge 804998 402500
m7gd.16xlarge 1073332 536668
m7gd.metal 1073332 536668

As you fill the SSD-based instance store volumes for your instance, the number of write IOPS that you can achieve decreases. This is due to the extra work the SSD controller must do to find available space, rewrite existing data, and erase unused space so that it can be rewritten. This process of garbage collection results in internal write amplification to the SSD, expressed as the ratio of SSD write operations to user write operations. This decrease in performance is even larger if the write operations are not in multiples of 4,096 bytes or not aligned to a 4,096-byte boundary. If you write a smaller amount of bytes or bytes that are not aligned, the SSD controller must read the surrounding data and store the result in a new location. This pattern results in significantly increased write amplification, increased latency, and dramatically reduced I/O performance.

SSD controllers can use several strategies to reduce the impact of write amplification. One such strategy is to reserve space in the SSD instance storage so that the controller can more efficiently manage the space available for write operations. This is called over-provisioning. The SSD-based instance store volumes provided to an instance don't have any space reserved for over-provisioning. To reduce write amplification, we recommend that you leave 10% of the volume unpartitioned so that the SSD controller can use it for over-provisioning. This decreases the storage that you can use, but increases performance even if the disk is close to full capacity.

For instance store volumes that support TRIM, you can use the TRIM command to notify the SSD controller whenever you no longer need data that you've written. This provides the controller with more free space, which can reduce write amplification and increase performance. For more information, see Instance store volume TRIM support.

Release notes

  • Instances built on the Nitro System, M4, t2.large and larger, t3.large and larger, and t3a.large and larger require 64-bit HVM AMIs. They have high-memory, and require a 64-bit operating system to take advantage of that capacity. HVM AMIs provide superior performance in comparison to paravirtual (PV) AMIs on high-memory instance types. In addition, you must use an HVM AMI to take advantage of enhanced networking.

  • Instances built on the Nitro System have the following requirements:

    The following Linux AMIs meet these requirements:

    • AL2023

    • Amazon Linux 2

    • Amazon Linux AMI 2018.03 and later

    • Ubuntu 14.04 or later with linux-aws kernel

      Note

      AWS Graviton-based instance types require Ubuntu 18.04 or later with linux-aws kernel

    • Red Hat Enterprise Linux 7.4 or later

    • SUSE Linux Enterprise Server 12 SP2 or later

    • CentOS 7.4.1708 or later

    • FreeBSD 11.1 or later

    • Debian GNU/Linux 9 or later

  • Instances with an AWS Graviton Processor have the following requirements:

    • Use an AMI for the 64-bit Arm architecture.

    • Support booting through UEFI with ACPI tables and support ACPI hot-plug of PCI devices.

    The following Linux AMIs meet these requirements:

    • Amazon Linux 2 (64-bit Arm)

    • Ubuntu 16.04 or later (64-bit Arm)

    • Red Hat Enterprise Linux 8.0 or later (64-bit Arm)

    • SUSE Linux Enterprise Server 15 or later (64-bit Arm)

    • Debian 10 or later (64-bit Arm)

  • To get the best performance from your M6i instances, ensure that they have ENA driver version 2.2.9 or later. Using an ENA driver earlier than version 1.2 with these instances causes network interface attachment failures. The following AMIs have a compatible ENA driver.

    • AL2023

    • Amazon Linux 2 with kernel 4.14.186 and later

    • Ubuntu 20.04 with kernel 5.4.0-1025-aws and later

    • Red Hat Enterprise Linux 8.3 with kernel 4.18.0-240.1.1.el8_3.ARCH and later

    • SUSE Linux Enterprise Server 15 SP2 with kernel 5.3.18-24.15.1 and later

  • Amazon EC2 Mac instances support macOS Mojave (version 10.14), macOS Catalina (version 10.15), and macOS Big Sur (version 11).

  • The maximum number of Amazon EBS volumes that you can attach to an instance depends on the instance type and instance size. For more information, see Instance volume limits.

  • Launching a bare metal instance boots the underlying server, which includes verifying all hardware and firmware components. This means that it can take 20 minutes from the time the instance enters the running state until it becomes available over the network.

  • To attach or detach EBS volumes or secondary network interfaces from a bare metal instance requires PCIe native hotplug support. Amazon Linux 2 and the latest versions of the Amazon Linux AMI support PCIe native hotplug, but earlier versions do not. You must enable the following Linux kernel configuration options:

    CONFIG_HOTPLUG_PCI_PCIE=y CONFIG_PCIEASPM=y
  • Bare metal instances use a PCI-based serial device rather than an I/O port-based serial device. The upstream Linux kernel and the latest Amazon Linux AMIs support this device. Bare metal instances also provide an ACPI SPCR table to enable the system to automatically use the PCI-based serial device. The latest Windows AMIs automatically use the PCI-based serial device.

  • Instances built on the Nitro System should have system-logind or acpid installed to support clean shutdown through API requests.

  • There is a limit on the total number of instances that you can launch in a Region, and there are additional limits on some instance types. For more information, see How many instances can I run in Amazon EC2? in the Amazon EC2 FAQ.