Ultimate Guide to General Purpose EC2 Instance Types

Ultimate Guide to General Purpose EC2 Instance Types

Ultimate Guide to General Purpose EC2 Instance Types 996 439 Jon Leach

Amazon EC2 instances are available for a variety of compute use cases. They come in different combinations of CPU, memory, storage, and networking capacity to deliver the optimum balance of resources for your application needs. You can choose a size that will help you scale your AWS services to match your workloads.

An overview of all EC2 instance types is available in an earlier article. In this post we will delve into General Purpose Instances to help you select the right AWS compute resources to maximize utilization and savings.

General purpose instances are well-suited for what applications?

These are ideal starter instances for new EC2 users. They allow you to get a good understanding of the compute, memory, and networking requirements of your applications, run stress tests, and graduate to specialized instance types. You will then be able to choose from a broad selection of instances designed specifically for compute, memory, storage intensive applications that best fit your needs.

A1 Instances

These instances are designed for scale-out applications and workloads that run on AWS’s Graviton processors and apps built on the open-source Arm architecture. AWS Graviton processors are built specifically for the cloud with the dedicated hardware and software of AWS Nitro System that provides A1 instances with high availability and security while reducing virtualization overhead.

Use Cases

  • Web servers
  • Containerized microservices
  • Caching fleets
  • Distributed data stores
  • Arm native development environments

Bare metal instances, such as a1.metal, provide applications direct access to server processors and memory.

M6g, M5, M5a and M4 Instances

These instances are designed for a wide range of applications on the cloud that use compute, memory, and networking resources in equal proportions. They are EBS-optimized by default to deliver dedicated throughput between Amazon EC2 and Amazon EBS with up to 4,000 Mbps, fully using the IOPS provisioned on an EBS volume.

Use Cases

  • Web and application servers
  • Small and midsize databases
  • Gaming servers
  • Data processing tasks that require additional memory
  • Caching fleets
  • App development environments
  • Backend servers for SAP, Microsoft SharePoint, cluster computing, and other enterprise applications

Bare metal instances, such as m5.metal, provide applications direct access to server processors and memory.

M5a and M5ad instances run on AMD processors. The M5d variant is optimized for storage.

Networking performance

M5n and M5dn instances provide 4x higher network bandwidth and packet process compared to the base M5 instances, for network intensive applications. They will help speed up typical machine learning operations like convolution, and automatically improve inference performance over a wide range of deep learning workloads.

SSD storage performance

M5d, M5dn and M5ad are dense storage instances designed for applications that need access to high-speed, low latency local storage, and those apps that need temporary data storage for scratch space, temporary files, and caches. These instances feature Local NVMe-based SSD block level storage physically connected to the host server.

What is the difference between m5 and m4 instances?

The new generation M5 instances are designed for highly demanding workloads that provide 14% better price-performance than M4 instances. M5 instances deliver almost double the EBS Bandwidth (Mbps) of the previous generation M4. They require running AMIs on a Virtual Private Cloud (VPC). Therefore migrating from M4 to M5 requires additional infrastructure considerations around moving to VPC environment.

M6g instances are custom built on the Arm-based AWS Graviton2 processors. They deliver up to 40% better price/performance over the current generation M5 instances.

T3, T3a and T2 Instances

These instances provide the ability to burst to a higher level of CPU performance when required by workloads. 

What are burstable instances and what are they used for?

Burstable instances are designed to withstand temporary spikes in CPU performance for applications with moderate CPU usage. They are only available on shared host servers and not available as scheduled instances. If the instance needs processing at higher CPU utilization for a prolonged period, a flat additional charge per vCPU-hour will prevent cost overruns.

Use Cases

  • Websites and web applications
  • Low-latency interactive applications
  • Small and medium databases
  • Virtual desktops 
  • Code repositories
  • Development, build, test, and staging environments
  • Product prototypes
  • Microservices

Optimizing AWS Spend for General Purpose EC2 Instances

Cost management is key to optimizing your AWS architecture. As your processing requirements increase your costs can quickly add up. To better manage your cloud spend you can take advantage of AWS pricing options that provide significant discounts in return for volume purchases.

Reserved Instances

Steady state workloads on production environments will benefit from substantial savings through Reserved Instances. When you commit to a set number of general purpose instances for 1 or 3 years, reservations will deliver savings of up to 60% over on-demand rates. Reserved instances, though, need to be monitored on a regular basis and need to be managed properly to match actual usage. Unused instances can quickly wipe out savings. To prevent this risk, instances that remain unused before their term expires, can be sold in the AWS Marketplace to recover costs.

These considerations are evidence that managing reservations requires time and effort to ensure your workloads are properly sized and optimized. A cost optimization tool like Parquantix will monitor and manage your reserved instances with its AI-driven algorithm in real time. It adjusts your RI mix and allocation based on changes in your workloads and business needs, eliminating any manual effort and time that you will rather spend on building and running your applications on AWS.

Savings Plans

Savings Plans offer reduced rates when you commit to Amazon for a specific dollar amount of instance usage over a 1 or 3 year period. They can be purchased for a wider range of compute resources such as AWS Fargate and Lambda, RDS pricing is not available for dbase resources at all. You will need to review your application requirements to decide if Savings Plans fit your needs.

The below table illustrates how much you can save on general purpose instances through volume-based pricing plans on AWS. An m5.xlarge running on Linux in US East (N. Virginia) can be purchased through these pricing plans for significant savings over on-demand rates.

Automated Cost Optimization

Managing your cloud architecture with the right mix of general purpose instances, and other specialized instance types requires careful consideration of all pricing options. Parquantix develops a cloud cost management strategy based on your application needs. It then continuously monitors usage to adjust your instance and pricing mix to maximize workload utilization and performance. Our AI-driven cost optimization tool calculates the optimal blend that delivers the highest value for your applications in the cloud.

Are you ready to start optimizing your applications with general purpose instances? Contact us to schedule a 30-minute consultation.

Get a Free Consultation

Click below to schedule a free, 30-minute consultation.

 
 
    Parquantix