July 10, 2022

3rd Generation Graviton

Recently AWS released Graviton 3 processes (at least in the US initially anyway) and it was time to take them for a run against our everyday performance test.

There are a few things to keep in mind before we dig into these stats.

First off, the stated performance improvements may not reflect significantly in ’everyday’ workloads, as it looks like there were efforts put into specific areas as follows:

  • up to 2x better floating-point performance
  • up to 2x faster crypto performance
  • up to 3x better ML performance

Compared to Graviton2.

New features include:

  • support for bfloat16
  • DDR5 memory support
  • 30Gbps enhanced networking
  • 20Gbps EBS bandwidth

And lastly, my previous performance comparison was set up in Sydney (ap-southeast-2) but this one is in Oregon (us-west-2), but I’m still running the tests from Sydney, so the results may not be totally indicative of real results.

CDKv2

When I originally set this test up, I wrote the stack using CDK v1, CDK v2 has now been released, so the first thing I needed to do was to update the code to be CDK v2 compatible.

You can see the changes in this commit.

Adding Graviton3 support

This is where I hit the next issue. CDK didn’t yet have support for Graviton3 built in. (You can get around it, by using the instance API name, but I figured I could take a stab at raising a PR in CDK).

After a few weeks of getting all the bits working and tests working, I got my PRs approved and they were released into mainline CDK.

Now that Graviton3 was supported, I added support to our stack via this commit.

Results

I’ve updated the Excel Spreadsheet with the new data.

Average Connection Time

This is as expected given the region difference.

Price Performance Comparison

The price also isn’t an apples to apples comparison as the price for the c7g.large is for the us-west-2 region, unlike the other instances which are priced in ap-southeast-2.

Requests per Second

Request Counts

Response Time and Latency

The results for each of the above, are really similar for the most part to Graviton2.

Summary

As stated earlier the results need to be taken with a grain of salt as the region where the test ran from and the region where the EC2 instances were are not the same, so latency was well up there, and a lot of the improvements discussed by AWS may not impact such a small workload.

All in all with this workload the performance was very similar to the Graviton2 processor. The other interesting item to note, is that the 3rd generation processors (at least at a large size) is about 7% more expensive.

Unless your application is memory intensive or doing a lot of crypto, ML or floating point operations, for now you are likely better off staying with Graviton2.

© Greg Cockburn

Powered by Hugo & Kiss.