AMD EPYC™ Cloud Benchmarks: AWS, Google, Digital Ocean and Epycly Compared
Epycly recently launched the world’s first publicly available AMD EPYC™ based virtual machines and today we are benchmarking Epcyly’s VMs and comparing them to Amazon Web Services (AWS), Google Cloud Platform (GCP) and Digital Ocean.
What We Tested
For this round of benchmarks we selected mid-range VM instances with 4 vCPUs each. We tried to match configurations between providers as closely as possible. All servers are running Ubuntu 17.10.
From Digital Ocean we selected a “Standard Droplet” with 4 vCPUs, 8GB RAM, and 160GB SSD. This VM is priced at $0.060/hour or $40/month.
Amazon Web Services
From AWS we selected an “m5.xlarge” instance with 4 vCPUs, 16GB RAM, and 160GB SSD. The base price for this instance is $0.192/hour or $138.24/month.
Google Cloud Platform
From Google we selected 4 vCPUs, specifying Skylake (the newest available), 8GB RAM, and 160GB SSD. This configuration is $0.21/hour or $113.18/month.
From Epycly we selected 4 vCPUs, 8GB RAM and 160GB SSD. This instance costs $0.13/hour or $72/month.
How We Tested
Finding benchmarks that accurately reflect the general performance of a system is incredibly difficult and benchmark results are always highly debatable.
With that said, we focused on three key areas of system performance: Disk I/O, CPU and Memory.
Disk Input/Output Operations per Second (IOPS)
fio --name=randrw --ioengine=libaio --iodepth=4 --rw=randrw --bs=4k --direct=1 --size=8G --numjobs=4 --group_reporting
To test IOPS we used fio in random read/write mode with a block size of 4K a queue depth of 4 and 4 concurrent processes.
Random disk I/O is typically the limiting factor on database performance and any other disk intensive applications which is why we picked this test.
With 4 jobs and a queue depth of 4 we are simulating 16 concurrent I/O operations which seems reasonable for a medium sized server.
The fio test works by doing one random read followed by one random write so the read and write IOPS will always come out the same even though SSD read speed is typically higher than write speed. We report the total IOPS for read and write combined.
stress-ng --sequential 4 --class cpu --class memory --timeout 30 --metrics
To test the CPU and Memory we used stress-ng which is a collection of 61 different CPU and Memory stress tests. Here we run each test for 30 seconds and then report the number of operations per second for each test.
In order to use the stress-ng results for benchmarking we take the lowest value for each individual test and then calculate the percent uplift for each instance over the minimum for that test. That number is always 0 for the worst performing instance.
To calculate the final benchmark score we averaged the percent uplift for each instance across all the tests.
What immediately stands out in our I/O testing is how poorly Amazon and Google perform. This is because they throttle performance and force customers to pay much higher prices for additional I/O capacity.
Digital Ocean trounces Amazon and Google but Epycly raises the bar even higher with double the performance of Digital Ocean.
CPU/Memory Testing Results
The results of our CPU and memory tests show Epycly performing twice as fast on average as Digital Ocean and Google. Amazon falls in the middle.
While both Google Cloud Platform and Digital Ocean are using recent Intel Skylake and Broadwell CPUs these cloud providers seem to be throttling and/or over-provisioning their CPUs.
Epycly’s more expensive but higher performance instances offer a slight edge over Digital Ocean on performance/price for disk I/O.
Google and Amazon may as well not be on the chart.
Amazon sells dedicated IOPS for $0.065 per IOP per month. For the 160GB SSD we tested the maximum IOPS you can buy is 8000, which will set you back $520/month while still only offering 1/4th of Digital Ocean’s performance and 1/8th of Epycly’s.
AWS and Google are more competitive on CPU/Memory performance/price than on disk I/O and only get beaten by 2–3X.
As with disk I/O Epycly and Digital Ocean offer similar levels of performance/price with Digital Ocean offering a cheaper price and Epycly offering higher performance instances.
These benchmarks make it very clear that AWS and Google are not competing on performance/price and are happy to serve up low performing throttled offerings with high prices.
Digital Ocean has been the long time value leader in cloud hosting but Epycly’s ability to leverage the AMD EPYC™ platform and other cutting edge technologies without being tied down to legacy infrastructure and pricing tiers allows them to take both the absolute performance lead and offer a superior value proposition.
On paper Intel CPUs may offer broadly comparable performance to AMD EPYC™ CPUs but when it comes to the cloud it is caveat emptor. Cloud providers over-provision and/or throttle their CPUs so real world cloud performance bears no resemblance to bare metal benchmarks.
Cloud offerings based on AMD EPYC™ are not only competitive with current Intel offerings but lead by a wide margin.
EPYC™ is a registered trademark of Advanced Micro Devices Inc. Epycly is not affiliated with or endorsed by the trademark holder in any way.