Evolution of the EC2 Network Performance: m3, m4, and m5

Andreas WittigUpdated 16 Apr 2018

AWS announces new generations of EC2 instances from time to time. Typically, each generation offers better performance at lower costs. This article discusses the networking capabilities of the general purpose instances over time. Spoiler alert: you can increase the throughput of your web application, decrease the duration of your backups from EC2 to S3, and increase the maximum network throughput between two EC2 instances without additional costs.

We have measured the networking performance of EC2 instance from three different general purpose generations:

  • The third generation m3 announced 2012.
  • The fourth generation m4 announced 2015.
  • The fifth generation m5 announced 2017 during re:Invent recently.

Evolution of the EC2 Network Performance

The network throughput increased slightly between each instance generation. However, m5.large, m5.xlarge, and m5.2xlarge instances can burst up to 10 Gbit/s for a short period amount of time.

The following table lists the average network throughput of m3, m4, and m5 EC2 instances in Gbit/s. We have measured the network performance daily with the iperf3 network benchmark tool on April 12th, 2018. See EC2 Network Performance Cheat Sheet if you are interested in the details of the network performance benchmark.

INSTANCE TYPE M3 FAMILY M4 FAMILY M5 FAMILY
medium 0.30 Gbit/s
large 0.69 Gbit/s 0.45 Gbit/s 0.74 Gbit/s
xlarge 0.99 Gbit/s 0.74 Gbit/s 1.24 Gbit/s
2xlarge 0.99 Gbit/s 0.99 Gbit/s 2.49 Gbit/s
4xlarge 1.99 Gbit/s 4.97 Gbit/s
10xlarge 9.85 Gbit/s
12xlarge 10.04 Gbit/s
16xlarge 20.31 Gbit/s
24xlarge 22.17 Gbit/s

Both m3 and m4 instances offer constant network throughput. In contrast, m5.large, m5.xlarge, and m5.2xlarge can burst network throughput up to 10 Gbit/s for a short period as illustrated in the following table.

The network performance benchmarks run for 60 minutes.

  • 90th Percentile: throughput was reached for 6 minutes.
  • 70th Percentile: throughput was reached for 18 minutes.
  • 50th Percentile: throughput was reached for 30 minutes.
  • 30th Percentile: throughput was reached for 42 minutes.
Instance Type Maximum 90th Percentile 70th Percentile 50th Percentile 30th Percentile
m5.large 10.04 1.43 0.74 0.74 0.74
m5.xlarge 10.04 10.04 1.24 1.24 1.24
m5.2xlarge 10.04 10.04 10.04 2.49 2.49
m5.4xlarge 10.04 10.04 10.04 10.04 4.97
m5.12xlarge 10.04 10.04 10.04 10.04 10.04
m5.24xlarge 22.20 22.20 22.19 22.18 22.17

As usual, making use of the latest instance generation gives you more performance for the same money. Especially, if your workload profits from a network performance burst for a few minutes, making use of the m5 instance types can increase throughput dramatically.

Andreas Wittig

Andreas Wittig

I’ve been building on AWS since 2012 together with my brother Michael. We are sharing our insights into all things AWS on cloudonaut and have written the book AWS in Action. Besides that, we’re currently working on bucketAV,HyperEnv for GitHub Actions, and marbot.

Here are the contact options for feedback and questions.