AWS EC2 Instance Types Explained

Amazon Web Services’ resource offerings are constantly changing, and staying on top of their evolution can be a challenge. Elastic Cloud Compute (EC2) instances are one of their core resource offerings, and they form the backbone of most cloud deployments. EC2 instances provide you with customizable and scalable server options. Let’s deconstruct the current AWS offerings as of April 2019 in order to best understand the EC2 offerings that are currently available.

EC2 Instances — And Their Prices — Are Constantly Improving

In general, EC2 instance types — their broad categories of specialization — have remained the same, but the specific models and sizes within each category evolve pretty quickly, so it’s important to remain informed. The main reason for this is because generational improvements within instance types result in both more powerful offerings and lower cost, so you need to be aware that what may be top-of-the-line one year can change quickly. Depending on your budget and workload, this understanding can inform your Reserve Instance purchasing, leaning you towards 1-year or Flexible RI offerings.

EC2 Instance Type Breakdown

A Quick Summary

EC2 instances come in the following categories:

    • General Purpose: The most popular; used for web servers, development environments, etc.
    • Compute Optimized: Good for compute-intensive applications such as some scientific modeling or high-performance web servers.
    • Memory Optimized: Used for anything that needs memory-intensive applications, such as real-time big data analytics, or running Hadoop or Spark.
    • Accelerated Computing: Include additional hardware (GPUs, FPGAs) to provide massive amounts of parallel processing for tasks such as graphics processing.
    • Storage Optimized: Ideal for tasks that require huge amounts of storage, specifically with sequential read-writes, such as log processing.
A chart of AWS EC2 types.

 

Details by EC2 Instance Type

Type: General Purpose

General Purpose instances are the most widely used and are a good first step if you’re new to AWS or cloud computing in general. They offer a great mix of cost and functionality, with their typical use being geared towards web servers, running development environments for your mobile or gaming apps, and running enterprise applications such as CRMs and ERPs. You’ll find that one of the main distinctions within this class is between instances with Fixed vs. Burstable performance. With Burstable performance EC2s, you’ll have the ability to quickly scale up your compute power — at a price.

General Purpose: A1

A1 instances are general use but differentiate themselves by being an ARM-based offering, as opposed to Intel or AMD. As such, this platform will appeal more to the ARM development community and to applications that already run open source software such as Java and Python and the multiple architectures these tend to support.

General Purpose: M5

M5 instances run on Intel Xeon processors and are thus suited to developing on the x86 architecture. They offer higher compute, memory, and network performance when compared to the A1.

M5 instances are great for development and test environments as well as web servers. They also offer support for Intel AVX-512, a set of CPU instructions that benefits the processing of encryption algorithms, so these instances are a great choice when security is important while not affecting performance.

General Purpose: T3 and T3a

T3 and T3a are respectively the Intel and AMD offerings of Burstable performance instances. Burstable performance instances are great if you want a cheaper and slightly less powerful offering than a fixed performance instance (like an M5), but you still want the option to be able to scale up your compute quickly to handle workloads, hence the “bursts” in power.

These bursts of power don’t come for free — they’re handled by CPU credits. In general, when you are not running at maximum processing power, you earn CPU credits. The amount you earn depends on the time at a low threshold and the size of your instance. When you need to burst up, these credits are spent.

 

Type: Compute Optimized

Compute Optimized: C5

C5 instances are ideal for applications where you prioritize raw compute power, such as gaming servers, scientific modeling, high-performance web servers, and media transcoding. C5 instances run on Intel Xeon Platinum processors and are benchmarked at 25% faster than previous-generation C4 instances — a clear example of the benefits of generational improvement in cloud resources.

 

Type: Memory Optimized

Memory Optimized: R5 & R5a

R5 and R5a are respectively the Intel and AMD offerings of “regular” memory optimized instances. These instances are ideal for memory intensive applications such as real-time big data analytics, large in-memory caches, and high-performance databases. The R5 and R5a instances benefit from the AWS Nitro System, which gives you access to almost all of the compute and memory resources of a server (i.e. allocating as little as possible to the OS). This optimization allows for lower cost when compared on a per-GiB basis to competitors.

Memory Optimized: X1 & X1e

X1 and X1e instances are optimized to provide a high ratio of memory to compute with the X1e family delivering the highest memory to compute ratio among EC2 offerings. These instances are used for the highest need memory-intensive applications such as SAP HANA, providing a strong foundation for real-time applications.

Memory Optimized: High Memory instances

High Memory instances have the greatest amount of available RAM, providing 6 TB, 9 TB, or 12 TB of memory in a single instance. Like X1/X1e, these are suited to production deployments of hugely memory intensive, real-time databases such as SAP HANA.

An important caveat with High Memory instances is that they are only available on Dedicated Hosts on a 3-year Reservation. This means that you will need to commit to a 3-year purchase, but you will get the security benefit of being on a host that is dedicated, i.e. you’ll have your own server to yourself and will not share resources as AWS does with other offerings.

 

Type: Accelerated Computing

Accelerated Computing: P3, G3, F1

Accelerated Computing instances use separate Graphical Processing Units (GPUs) or Field Programmable Gate Arrays (FPGAs) to optimize for specialized tasks such as graphics processing or floating-point number calculations. The instance offerings are:

  • P3: These are the general GPU offerings, good for machine learning and offering robust parallel processing abilities.
  • G3: These are the GPU offerings that are specialized for graphics-intensive tasks such as rendering, encoding, and streaming.
  • F1: These are instances that offer FPGAs for accelerated processing. You can leverage the FPGAs multiple ways over time for different enhancements, and all this is aided by custom FPGA-specific AMIs (called AFIs) that offer quicker deployment and development options compared to conventional FPGAs.

 

Type: Storage Optimized

Storage Optimized: H1 & D2

H1 and D2 instances are part of the Dense storage offerings that provide high sequential read-writes for large data sets, such as in distributed Hadoop deployments. H1 and D2 instances provide immense storage on HDD, with H1 providing a maximum of 16 TB and D2 providing a maximum of 48 TB.

Storage Optimized: I3

I3 instances offer storage on SSD with a maximum of just under 16 GiB. However, these instances provide lower latency than HDD-based storage and also offer AWS Nitro System for optimized access to memory and computer resources (also called “Bare Metal” access).

 

Getting Real Experience With EC2

The breadth and complexity of AWS’ EC2 types can be overwhelming. It’s helpful to visit AWS’ own EC2 page to stay informed throughout the year new instances are added. If you haven’t had hands-on experience, there are resources to help you get started: Cloud Academy’s Labs are a safe, sandboxed environment where you can get real experience with EC2 instances without the risk of making changes (and sometimes costly changes) in a live environment. Once you get comfortable with EC2s, you’ll be able to quickly progress towards adding complementary resources and networking infrastructure to deploy your own environment.

Joe Nemer

Written by

Joe Nemer

Joe is a Technical Researcher at Cloud Academy and works to help readers connect concepts in ways they haven't thought of before. Side interests include all sorts of waves — ocean waves, sine waves, just not goodbye waves.


Related Posts

Avatar
Dzenan Dzevlan
— November 20, 2019

Application Load Balancer vs. Classic Load Balancer

What is an Elastic Load Balancer? This post covers basics of what an Elastic Load Balancer is, and two of its examples: Application Load Balancers and Classic Load Balancers. For additional information — including a comparison that explains Network Load Balancers — check out our post o...

Read more
  • ALB
  • Application Load Balancer
  • AWS
  • Elastic Load Balancer
  • ELB
Albert Qian
Albert Qian
— November 13, 2019

Advantages and Disadvantages of Microservices Architecture

What are microservices? Let's start our discussion by setting a foundation of what microservices are. Microservices are a way of breaking large software projects into loosely coupled modules, which communicate with each other through simple Application Programming Interfaces (APIs). ...

Read more
  • AWS
  • Docker
  • Kubernetes
  • Microservices
Nisar Ahmad
Nisar Ahmad
— November 12, 2019

Kubernetes Services: AWS vs. Azure vs. Google Cloud

Kubernetes is a popular open-source container orchestration platform that allows us to deploy and manage multi-container applications at scale. Businesses are rapidly adopting this revolutionary technology to modernize their applications. Cloud service providers — such as Amazon Web Ser...

Read more
  • AWS
  • Azure
  • Google Cloud
  • Kubernetes
Avatar
Stuart Scott
— October 31, 2019

AWS Internet of Things (IoT): The 3 Services You Need to Know

The Internet of Things (IoT) embeds technology into any physical thing to enable never-before-seen levels of connectivity. IoT is revolutionizing industries and creating many new market opportunities. Cloud services play an important role in enabling deployment of IoT solutions that min...

Read more
  • AWS
  • AWS IoT Events
  • AWS IoT SiteWise
  • AWS IoT Things Graph
  • IoT
Avatar
Cloud Academy Team
— October 23, 2019

Which Certifications Should I Get?

As we mentioned in an earlier post, the old AWS slogan, “Cloud is the new normal” is indeed a reality today. Really, cloud has been the new normal for a while now and getting credentials has become an increasingly effective way to quickly showcase your abilities to recruiters and compan...

Read more
  • AWS
  • Azure
  • Certifications
  • Cloud Computing
  • Google Cloud Platform
Valery Calderón Briz
Valery Calderón Briz
— October 22, 2019

How to Go Serverless Like a Pro

So, no servers? Yeah, I checked and there are definitely no servers. Well...the cloud service providers do need servers to host and run the code, but we don’t have to worry about it. Which operating system to use, how and when to run the instances, the scalability, and all the arch...

Read more
  • AWS
  • Lambda
  • Serverless
Avatar
Stuart Scott
— October 16, 2019

AWS Security: Bastion Hosts, NAT instances and VPC Peering

Effective security requires close control over your data and resources. Bastion hosts, NAT instances, and VPC peering can help you secure your AWS infrastructure. Welcome to part four of my AWS Security overview. In part three, we looked at network security at the subnet level. This ti...

Read more
  • AWS
Avatar
Sudhi Seshachala
— October 9, 2019

Top 13 Amazon Virtual Private Cloud (VPC) Best Practices

Amazon Virtual Private Cloud (VPC) brings a host of advantages to the table, including static private IP addresses, Elastic Network Interfaces, secure bastion host setup, DHCP options, Advanced Network Access Control, predictable internal IP ranges, VPN connectivity, movement of interna...

Read more
  • AWS
  • best practices
  • VPC
Avatar
Stuart Scott
— October 2, 2019

Big Changes to the AWS Certification Exams

With AWS re:Invent 2019 just around the corner, we can expect some early announcements to trickle through with upcoming features and services. However, AWS has just announced some big changes to their certification exams. So what’s changing and what’s new? There is a brand NEW ...

Read more
  • AWS
  • Certifications
Alisha Reyes
Alisha Reyes
— October 1, 2019

New on Cloud Academy: ITIL® 4, Microsoft 365 Tenant, Jenkins, TOGAF® 9.1, and more

At Cloud Academy, we're always striving to make improvements to our training platform. Based on your feedback, we released some new features to help make it easier for you to continue studying. These new features allow you to: Remove content from “Continue Studying” section Disc...

Read more
  • AWS
  • Azure
  • Google Cloud Platform
  • ITIL® 4
  • Jenkins
  • Microsoft 365 Tenant
  • New content
  • Product Feature
  • Python programming
  • TOGAF® 9.1
Avatar
Stuart Scott
— September 27, 2019

AWS Security Groups: Instance Level Security

Instance security requires that you fully understand AWS security groups, along with patching responsibility, key pairs, and various tenancy options. As a precursor to this post, you should have a thorough understanding of the AWS Shared Responsibility Model before moving onto discussi...

Read more
  • AWS
  • instance security
  • Security
  • security groups
Avatar
Jeremy Cook
— September 17, 2019

Cloud Migration Risks & Benefits

If you’re like most businesses, you already have at least one workload running in the cloud. However, that doesn’t mean that cloud migration is right for everyone. While cloud environments are generally scalable, reliable, and highly available, those won’t be the only considerations dri...

Read more
  • AWS
  • Azure
  • Cloud Migration