와탭랩스 블로그 오픈 이벤트 😃
자세히 보기
Tech
2024-03-25
AWS graviton 2, gp3 Measurement

Hello, I am Jin-tae Lim from the DevOps team at WhaTap Labs. AWS EC2 and EBS support multiple platforms that you can choose according to your needs.

Since the beginning of this year, WhaTap Labs has been moving to graviton-based instances, which are rumored to be cost-effective, and the GP2 filesystem has been moved to GP3.

We will blog about our testing as we move to both environments.

Graviton 2

Around February 2021, the AWS Seoul Region officially added EC2 tiers based on AWS Graviton 2.

These tiers are claimed to have "improved performance and even lower prices" compared to tiers based on traditional Intel CPUs. Let's see if this is true.

Is it true?

https://aws.amazon.com/ko/ec2/graviton/

Price comparison

Nothing in life is free, so we started comparing AWS to traditional instance types to see if there were any pitfalls.

We looked at the difference in monthly billing per single instance.

m5.large vs m6g.large

Type

Non-RI Monthly

RI Monthly

m5.large

84.06 USD

53.29 USD

m6g.large

67.68 USD

43.73 USD

The specs for each instance are 2 vCPU, 8 GiB Memory, excluding monthly network costs.

Referring to the table above, we can see that AWS is actually quoting about 20% less than the existing instance.

Assuming the performance is the same, this is an attractive offer that saves you about 20% of what you would pay for an instance.

Performance comparison

We ran a quick test to see how performance would compare.

The tested instance environment is as follows

  • ubuntu 20.04 LTS
  • Using the MEDIUM type of T-series
  • Apply unlimited CPU credit option
  • Measured with WhaTap Server Monitoring Agent

First, the CPU usage for about an hour right after the application starts up.

blog main image

Average CPU Usage per minute

Red: t3.medium / Cyan: t4g.medium ( AWS Graviton 2 )

The earliest CPU utilization to hit 100% is when the application starts up.

You can see that the cyan metric cleared the 100% point faster than the red metric, so you can recognize that the application took less time to start up. The metrics above may not be comparable except to see the difference in when the application started.

So, the average metrics per minute are as follows

blog main image

CPU Usage per Second

Red: t3.medium / Cyan: t4g.medium ( AWS Graviton 2 )

Overall, you can see that the cyan graph sits below the red graph. There are some similarities, but we think the next graph will make it clearer.

blog main image

I see a gap of more than 10%.

This is a test environment in the early morning hours, about 14 hours after the application has been up.

Due to the way the test module is structured, resource usage is tuned to drop during the early morning hours, so we see lower resource usage than immediately after startup. However, even with about an hour of data, there is an average difference in CPU usage of 1.3%. The graph shows an overall difference in CPU efficiency of about 10%.

The bottom line

Price 20% cheaper
10% better performance

AWS Graviton 2 is giving us a great price/performance ratio of over 30%.

Most of our server applications are Java-based, and it's a "no brainer" to move over, especially when it's Java, which is natively multiplatform in the first place, so our infrastructure has been moving over the expiring RIs since the beginning of this year.

However, with the change in CPU architecture from X86 to ARM, applications that are CPU architecture dependent may find the migration cumbersome.

EBS gp3

GP3 was deployed to all regions around December 2020.

The advantage of the type is that the performance of the volume can be adjusted regardless of the size of the volume, within the specification range of the existing GP2.Even the price was announced to be lower than that of GP2, rather than being compared to the IO series, which has a similar role in the past.

We also compared it to the existing GP2 type to see if there are any pitfalls.

Pricing

Once again, the first thing I looked at was the pricing. Unlike GP2, GP3 had prices for iops and MB/s in addition to the price for volume size.

EBS Price

Name

gp2

gp3

Size

0.114

0.0912

IOPS

x

0.0057

MB/s

x

0.067

Additionally, IOPS came with 3000 IOPS by default and MB/s came with 125 MB/s by default. The idea is that if you set it higher than the default performance, it will cost you extra.

It is hard to really understand the pricing if you just look at the purely hourly price tag. Therefore, we compared GP2 and GP3 when they have the same performance, and when they have the same capacity but GP3 only has the performance that comes by default.

EBS Price - Based on Equal Performance

Size

gp2

gp3

300

34.20

31.92

334

38.08

36.16

500

57.00

51.30

1000

114.00

96.90

5334

608.08

566.26

16000

1824.00

1539.00

To compare prices based on equal performance, the performance of gp2 and gp3 in IOPS and MB/s are written on an equal basis.

EBS Price - Based on equal capacity

Size

gp2

gp3

300

34.20

27.36

334

38.08

30.46

500

57.00

45.46

1000

114.00

91.20

5334

608.08

486.46

16000

1824.00

1459.20

gp3 has a built-in performance of 3000 IOPS and 125 MB/s.

Even if you compare based on the same performance, GP3 is significantly cheaper than the old GP2. Because of the lower cost, it is possible to create volumes with higher performance than GP2 in some cases.

Performance

In terms of customization, gp3 appears to offer higher performance at a lower cost. However, when it comes to disk devices, IOPS and MB/s aren't everything.

We ran a number of tests to see if there is a performance difference when actually using these volumes.

Testing FIO statements

gp2

blog main image
와탭 모니터링을 무료로 체험해보세요!