Benchmarking Amazon's ARM Graviton CPU With EC2's A1 Instances
Monday night Amazon announced the new "A1" instance type for the Elastic Compute Cloud (EC2) that is powered by their own "Graviton" ARMv8 processors. Since then I have been running benchmarks on Amazon's first-generation 64-bit ARM processors and seeing how these ARM cloud instances compare to their Intel Xeon and AMD EPYC performance on EC2 in both raw performance as well as performance-per-dollar.
The new A1 instances are currently sized between the a1.medium for 1 vCPU on a Graviton processor up through a1.4xlarge for 16 vCPUs and 32GB of RAM. On-demand pricing for these ARM cloud instances range from just two cents per hour to fourty cents per hour for the a1.4xlarge instance type. Amazon is promoting these A1 instances as being great for scale-out workloads while being optimized for performance and cost.
Amazon's Graviton processors stem from the company's acquisition of Annapurna Labs in 2015. These first-cut Graviton processors are based upon ARM Cortex-A72 though frequency information and other interesting details haven't been published or exposed through the system interfaces. The A72 is already a bit dated but hopefully Amazon is already hard at work on their second-generation ARM processors if they wish for them to be competitive to Xeon and EPYC instances.
Initially with the Amazon A1 instance types, Amazon Linux, Ubuntu Linux, and Red Hat Enterprise Linux are the initial operating systems with ARMv8 support on EC2. Over the past day and a half I have been benchmarking the EC2 a1.large (2 vCPU), a1.xlarge (4 vCPU), and a1.2xlarge (8 vCPU0, a1.4xlarge (16 vCPU) instances with these Cortex-A72 cores and varying amounts of system memory. The overall experience with the Ubuntu Linux and RHEL testing has been going well and on-par with my other ARM server/cloud experiences.
I benchmarked this range of ARM Graviton A1 instances against the relevant AMD EPYC M5A instance types (large, xlarge, 2xlarge, and 4xlarge) that are backed by the AMD EPYC 7571 processors and were rolled out weeks ago as the first EPYC instances on EC2. For rounding out the look was benchmarking the Intel-based general purpose M5 instance types of the same system. The Intel M5 instances are backed by the Intel Xeon Platinum 8175M processors.
Via the Phoronix Test Suite a variety of workloads were benchmarked across this span of four instance types on Graviton, EPYC, and Xeon. Not only was the raw performance analyzed with our fully-automated benchmarking software but also the performance-per-dollar based upon the current on-demand EC2 spot prices. Additional EC2 A1 / Graviton benchmarks will be published on Phoronix in the days ahead, including a look at some of the ARM hardware we have locally for getting a better idea for the performance potential and usefulness of Amazon's first-gen ARM offerings.