Amazon EC2 offers several types of virtual servers, also known as instances, that helps customers choose the CPU, memory, storage, and networking capacity needed to run their applications.

Currently, available Instance types are General Purpose, Compute Optimized, Memory Optimized, Accelerated Computing, Storage Optimized, and Bare Metal.

General Purpose Instances

General purpose instances are designed to give users a balance of compute, memory, and networking performance.

A1 instances are ideal for workloads supported by the Arm ecosystem. These instances do well for application such as Web Servers, Containerized microservices, caching fleets, distributed data stores and applications that need Arm instruction set.

ModelvCPUMem (GiB)StorageNetwork Performance (Gbps)
a1.medium12EBS-OnlyUp to 10
a1.large24EBS-OnlyUp to 10
a1.xlarge48EBS-OnlyUp to 10
a1.2xlarge816EBS-OnlyUp to 10
a1.4xlarge1632EBS-OnlyUp to 10

T2 and T3 Instances offer a base level of CPU performance but have the ability to go (burst) higher when required by the work load. Ideal for applications such as websites and web applications, code repositories, development, build, test and staging environments.

ModelvCPU*CPU Credits/hourMem (GiB)StorageNetwork Performance (Gbps)
t3.nano260.5EBS-OnlyUp to 5
t3.micro2121EBS-OnlyUp to 5
t3.small2242EBS-OnlyUp to 5
t3.medium2244EBS-OnlyUp to 5
t3.large2368EBS-OnlyUp to 5
t3.xlarge49616EBS-OnlyUp to 5
t3.2xlarge819232EBS-OnlyUp to 5
t2.micro161EBS-OnlyLow to Moderate
t2.small1122EBS-OnlyLow to Moderate
t2.medium2244EBS-OnlyLow to Moderate
t2.large2368EBS-OnlyLow to Moderate

M5, M5a, and M5d Instances offer a balance of compute, memory and network resources for a wide range of applications such as Web and application servers, small and medium databases, gaming servers, caching fleets and to run backend servers for Microsoft Sharepoint, SAP, cluster computing and enterprise applications.

ModelvCPU*Mem (GiB)Storage (GiB)Dedicated EBS Bandwidth (Mbps)Network Performance (Gbps)
m5.large28EBS-onlyUp to 3,500Up to 10
m5.xlarge416EBS-onlyUp to 3,500Up to 10
m5.2xlarge832EBS-onlyUp to 3,500Up to 10
m5.4xlarge1664EBS-only3,500Up to 10
m5d.large281 x 75  NVMe SSDUp to 3,500Up to 10
m5d.xlarge4161 x 150  NVMe SSDUp to 3,500Up to 10
m5d.2xlarge8321 x 300  NVMe SSDUp to 3,500Up to 10
m5d.4xlarge16642 x 300  NVMe SSD3,500Up to 10
m5d.12xlarge481922 x 900  NVMe SSD7,00010
m5d.24xlarge963844 x 900  NVMe SSD14,00025
m5a.large28EBS-onlyUp to 2,120Up to 10
m5a.xlarge416EBS-onlyUp to 2,120Up to 10
m5a.2xlarge832EBS-onlyUp to 2,120Up to 10
m5a.4xlarge1664EBS-only2,120Up to 10
ModelvCPU*Mem (GiB)StorageDedicated EBS Bandwidth (Mbps)Network Performance
m4.10xlarge40160EBS-only4,00010 Gigabit
m4.16xlarge64256EBS-only10,00025 Gigabit

Compute Optimized instances

As the name indicates, Compute Optimized instances are great for applications that need a high amount of compute power. Ideal for compute-intensive applications like high-performance web servers, high-performance computing (HPC), scientific modelling, distributed analytics and machine learning inference.

ModelvCPU*Mem (GiB)Storage (GiB)Dedicated EBS Bandwidth (Mbps)Network Performance (Gbps)
c5.large24EBS-OnlyUp to 3,500Up to 10
c5.xlarge48EBS-OnlyUp to 3,500Up to 10
c5.2xlarge816EBS-OnlyUp to 3,500Up to 10
c5.4xlarge1632EBS-Only3,500Up to 10
c5d.large241 x 50 NVMe SSDUp to 3,500Up to 10
c5d.xlarge481 x 100 NVMe SSDUp to 3,500Up to 10
c5d.2xlarge8161 x 200 NVMe SSDUp to 3,500Up to 10
c5d.4xlarge16321 x 400 NVMe SSD3,500Up to 10
c5d.9xlarge36721 x 900 NVMe SSD7,00010
c5d.18xlarge721442 x 900 NVMe SSD14,00025
c5n.large25.25EBS-OnlyUp to 3,500Up to 25
c5n.xlarge410.5EBS-OnlyUp to 3,500Up to 25
c5n.2xlarge821EBS-OnlyUp to 3,500Up to 25
c5n.4xlarge1642EBS-Only3,500Up to 25
c4.8xlarge3660EBS-Only4,00010 Gigabit

Memory Optimized instances

Memory-optimized instances offer large memory size for memory intensive applications including in-memory applications, in-memory databases, in-memory analytics solutions, High Performance Computing (HPC), scientific computing, and other memory-intensive applications.

R4, R5, and R5a Instances deliver fast performance for workloads that process large data sets in memory.

These instances are great for High-performance, relational (MySQL) and NoSQL (MongoDB, Cassandra) databases, Distributed web scale cache stores that provide in-memory caching of key-value type data (Memcached and Redis), In-memory databases using optimized data storage formats and analytics for business intelligence (for example, SAP HANA), Applications performing real-time processing of big unstructured data (financial services, Hadoop/Spark clusters) and High-performance computing (HPC) and Electronic Design Automation (EDA) applications.

ModelvCPUMem (GiB)Storage (GiB)Dedicated EBS Bandwidth (Mbps)Networking Performance (Gbps)
r5.large216EBS-Onlyup to 3,500Up to 10
r5.xlarge432EBS-Onlyup to 3,500Up to 10
r5.2xlarge864EBS-Onlyup to 3,500Up to 10
r5.4xlarge16128EBS-Only3,500Up to 10
r5d.large2161 x 75 NVMe SSDup to 3,500Up to 10
r5d.xlarge4321 x 150 NVMe SSDup to 3,500Up to 10
r5d.2xlarge8641 x 300 NVMe SSDup to 3,500Up to 10
r5d.4xlarge161282 x 300 NVMe SSD3,500Up to 10
r5d.12xlarge483842 x 900 NVMe SSD7,00010
r5d.24xlarge967684 x 900 NVMe SSD14,00025
r5a.large216EBS-Onlyup to 2,120Up to 10
r5a.xlarge432EBS-Onlyup to 2,120Up to 10
r5a.2xlarge864EBS-Onlyup to 2,120Up to 10
r5a.4xlarge16128EBS-Only2,120Up to 10
ModelvCPUMem (GiB)StorageNetworking Performance (Gbps)
r4.large215.25EBS-OnlyUp to 10
r4.xlarge430.5EBS-OnlyUp to 10
r4.2xlarge861EBS-OnlyUp to 10
r4.4xlarge16122EBS-OnlyUp to 10

High memory, “u”, instances have 6 TiB, 9 TiB, and 12 TiB of memory per instance. They are designed to run large in-memory databases, including production installations of SAP HANA. These instances offer bare metal performance with direct access to host hardware.

ModelLogical Proc*Mem (TiB)Network Perf. (Gbps)Dedicated EBS Bandwidth (Gbps)Network Performance
u-6tb1.metal4486251425 Gigabit
u-9tb1.metal4489251425 Gigabit
u-12tb1.metal44812251425 Gigabit

x1 and x1e instances are well suited for in-memory databases such as SAP HANA, Big-data processing engines like Apace Spark or Presto, High performance computing applications and memory intensive enterprise applications.

x1e.xlarge41221 x 120500Up to 10 Gigabit
x1e.2xlarge82441 x 2401,000Up to 10 Gigabit
x1e.4xlarge164881 x 4801,750Up to 10 Gigabit
x1e.8xlarge329761 x 9603,500Up to 10 Gigabit
x1e.16xlarge641,9521 x 1,9207,00010 Gigabit
x1e.32xlarge1283,9042 x 1,92014,00025 Gigabit
x1.16xlarge649761 x 1,9207,00010 Gigabit
x1.32xlarge1281,9522 x 1,92014,00025 Gigabit

z1d Instances deliver high compute and high memory. These instances are ideal for electronic design automation and relational database workloads.

ModelvCPUMem (GiB)Networking PerformanceSSD Storage (GB)
z1d.large216Up to 10 Gigabit1 x 75 NVMe SSD
z1d.xlarge432Up to 10 Gigabit1 x 150 NVMe SSD
z1d.2xlarge864Up to 10 Gigabit1 x 300 NVMe SSD
z1d.3xlarge1296Up to 10 Gigabit1 x 450 NVMe SSD
z1d.6xlarge2419210 Gigabit1 x 900 NVMe SSD
z1d.12xlarge4838425 Gigabit2 x 900 NVMe SSD

Accelerated Computing instances

“Accelerated Computing instance family is a family of instances which use hardware accelerators, or co-processors, to perform some functions, such as floating-point number calculation and graphics processing, more efficiently than is possible in software running on CPUs.

Amazon EC2 provides three types of Accelerated Computing instances – GPU compute instances for general-purpose computing, GPU graphics instances for graphics intensive applications, and FPGA programmable hardware compute instances for advanced scientific workloads.”

P3 instances are well suited for deep learning, computational fluid dynamics, computational finance, seismic analysis, molecular modeling, genomics, rendering, and other server-side GPU compute workloads.

ModelGPUsvCPUMem (GiB)GPU Mem (GiB)GPU P2PStorage (GiB)Dedicated EBS Bandwidth  Networking Performance
p3.2xlarge186116EBS-Only1.5 GbpsUp to 10 Gigabit
p3.8xlarge43224464NVLinkEBS-Only7 Gbps10 Gigabit
p3.16xlarge864488128NVLinkEBS-Only14 Gbps25 Gigabit
p3dn.24xlarge896768256NVLink2 x 900 NVMe SSD14 Gbps100 Gigabit

P2 instances are well suited for deep learning, graph databases, high-performance databases, computational fluid dynamics, computational finance, seismic analysis, molecular modeling, genomics, rendering, and other server-side GPU compute workloads.

ModelGPUsvCPUMem (GiB)GPU Memory (GiB)Network Performance
p2.8xlarge8324889610 Gigabit
p2.16xlarge166473219225 Gigabit

G3 instances are ideal for applications such as 3D visualizations, graphics-intensive remote workstations, 3D rendering, video encoding, virtual reality, and other server-side graphics workloads requiring massively parallel processing power.

ModelGPUsvCPUMem (GiB)GPU Memory (GiB)Network Performance
g3s.xlarge1430.58Up to 10 Gigabit
g3.4xlarge1161228Up to 10 Gigabit
g3.8xlarge2322441610 Gigabit
g3.16xlarge4644883225 Gigabit

F1 instances are designed to accelerate computationally intensive algorithms, such as data-flow or highly parallel operations not suited to general purpose CPUs.”

ModelFPGAsvCPUMem (GiB)SSD Storage (GB)Networking Performance
f1.2xlarge18122470Up to 10 Gigabit
f1.4xlarge216244940Up to 10 Gigabit
f1.16xlarge8649764 x 94025 Gigabit

Storage Optimized instances

“Dense-storage instances are designed for workloads that require high sequential read and write access to very large data sets, such as Hadoop distributed computing, massively parallel processing data warehousing, and log processing applications. The Dense-storage instances offer the best price/GB-storage and price/disk-throughput across other EC2 instances.”

H1 instances are great for data-intensive workloads such as MapReduce and distributed file systems, applications requiring sequential access to large amounts of data on direct-attached instance storage, and applications that require high-throughput access to large quantities of data

ModelvCPU*Mem (GiB)Networking PerformanceStorage (GB)
h1.2xlarge832Up to 10 Gigabit1 x 2,000 HDD
h1.4xlarge1664Up to 10 Gigabit2 x 2,000 HDD
h1.8xlarge3212810 Gigabit4 x 2,000 HDD
h1.16xlarge6425625 Gigabit8 x 2,000 HDD

I3 instances are well suited for High frequency online transaction processing (OLTP) systems, Relational databases, NoSQL databases, Cache for in-memory databases (for example, Redis), Data warehousing applications, and Low latency Ad-Tech serving applications

ModelvCPU*Mem (GiB)Networking Performance (Gbps)Storage (TB)
i3.large215.25Up to 101 x 0.475 NVMe SSD
i3.xlarge430.5Up to 101 x 0.95 NVMe SSD
i3.2xlarge861Up to 101 x 1.9 NVMe SSD
i3.4xlarge16122Up to 102 x 1.9 NVMe SSD
i3.8xlarge32244104 x 1.9 NVMe SSD
i3.16xlarge64488258 x 1.9 NVMe SSD
i3.metal72*512258 x 1.9 NVMe SSD

D2 instances are ideal for applications such as Massive parallel processing (MPP) data warehouse, MapReduce and Hadoop distributed computing and Log or data processing applications.

ModelvCPU*Mem (GiB)Storage (GB)Network Performance
d2.xlarge430.53 x 2000 HDDModerate
d2.2xlarge8616 x 2000 HDDHigh
d2.4xlarge1612212 x 2000 HDDHigh
d2.8xlarge3624424 x 2000 HDD10 Gigabit

For best performance, Amazon recommends customers use the latest generation instances when launching new compute services. You can get the list of current generation instance types by visiting Amazon EC2 Instance Types