Oracle’s Ampere A1 Arm VMs: First impressions

May 26, 2021 | 4 minute read
Gilson Melo
Director of Product Management
Text Size 100%:

This post was written by a guest contributor, Pawel Bojanowski, platform engineer at Elotl.

With Oracle’s recent announcement about its new Ampere Arm-based virtual machine (VM) instances, our customer Project Ronin asked us at Elotl about using those instances through our nodeless Kubernetes offering.

This instance shape also caught our attention because it promises great performance for a competitive price per hour. Because adding support for this instance shape to our nodeless Kubernetes product requires some work on our part, we decided to first check whether it’s worth it in terms of both performance and pricing.

“Elotl is obsessed with enabling enterprises to consume right-sized cost-effective compute for Kubernetes applications,” said Madhuri Yechuri, Founder and CEO of Elotl Inc. “We’re thrilled to see the arrival of the Oracle Cloud Infrastructure (OCI) Ampere A1 Compute in the cloud compute market! The Ampere A1 Compute provides a fantastic low-cost, high-performant commodity compute option for our customers like Ronin. We can’t wait to put them to use!”

A graphic depicting Ronin's logo.

Project Ronin currently has most of their workloads in Azure, so the natural choice for comparison is the Azure AMD general-purpose VM with an equal number of vCPUs and gigabytes of memory.

“Ronin is working to significantly impact cancer treatment with data,” said Denali Lumma, vice president of engineering at Project Ronin. “We must take advantage of all healthcare-specific cloud-agnostic infrastructure and platform as services offerings as they become available. We are thrilled to see Oracle’s newly released faster and cheaper Ampere A1 Compute instances and the ability to use these effortlessly through the Elotl interface."

Getting started

We used the Oracle Cloud Arm-based Ampere A1 VM.Standard.A1.Flex shape with 2 OCPUs, 8 GB of memory, and a matching x86-based (AMD) VM shape on Azure Standard_D2as_v4 with 2 vCPUs and 8 GiB of memory.

For the sake of simplicity and to make this comparison honest, both instances used a Nginx server with default settings and Oracle Linux 8. We picked Nginx because it’s one of the applications that Project Ronin uses in their microservice stack. We understand that the Nginx server is not commonly used for CPU-intensive or memory-intensive tasks. However, our intention was to determine whether the performance of Oracle’s Ampere A1 VM is similar to the performance of Azure’s x86 general-purpose VMs.

To load-test the servers, we used an excellent tool called Vegeta because it’s robust and provides test data that’s easy to parse.

The following code block shows an example of a launching test:

A screenshot of an example launching test.

As mentioned, we were interested in two factors: Performance and pricing. For performance, we ran three tier tests for each cloud provider: 1,000 requests per second (r/s), 1,500 r/s, and 2,000 r/s. Each test took one minute at a steady request-per-second rate.

Performance results

For the 1,000-r/s rate, we observed stable, similar performance for both P50 (median) and P95, with slightly better performance for Azure VM.

A bar graph comparing 1,000 requests per second and response times for Azure and Oracle.

At the 1,500-r/s rate, we observed almost the same results for median. However, on Oracle Ampere A1 VM, there were some outliers for P95.

A bar graph comparing 1,500 requests per second and response times for Azure and Oracle.

At the 2,000-r/s rate, we observed a similar success ratio on both instances:

  • Similar median of 107 ms on Azure VM and 117 ms on Oracle VM

  • Slightly smaller P95 on Oracle VM

A bar graph comparing 2,000 requests per second and response times for Azure and Oracle.

We think it’s fair to say that the performance of Nginx on both VMs is almost the same. The percentage of 200 status code responses is good as well. Even under a high load, the number of 5xx status code responses didn’t reach 2% of all responses.

Pricing

Often, pricing is a factor that makes you choose one cloud provider over another. The following table compares the hourly and monthly cost of the Oracle and Azure VMs with similar resource specifications:

A chart comparing the VM resources and hourly and monthly rates between Azure and Oracle.

For us at Elotl, it’s a good enough incentive to add support for the Oracle instances in our Nodeless Kubernetes offering. Although the Azure VM wins the performance contest by a small margin, the Oracle VM crushes Azure in terms of price-performance. Basically, for the price of the Azure x86 Standard_D2as_v4 VM, we could get a powerful Ampere A1 VM with 6 OCPUs and 20 GB of memory!

In the next post, we hope to cover how you can use those VMs through nodeless Kubernetes to save even more money on infrastructure using our products!

Want to learn more?

If you want to experience Oracle Cloud Infrastructure Arm-based Ampere A1 Compute Shapes for yourself, sign up for an OCI account and start testing today! To find out more, see the following resources:

Gilson Melo

Director of Product Management


Previous Post

Arm-based cloud computing is the next big thing: Introducing Arm on Oracle Cloud Infrastructure

Clay Magouyrk | 9 min read

Next Post


Introducing o, the easy way to use the CLI

Kevin Colwell | 5 min read