Cassandra Workload Brief
An open-source NoSQL distributed database trusted by thousands of companies
The Ampere® Altra® and Ampere® Altra® Max processors are complete system-on-chip (SOC) solutions built for cloud native applications. Ampere Altra supports up to 80 cores and Ampere Altra Max supports up to 128 AArch64 cores. In addition to incorporating a large number of high-performance cores, the innovative architecture delivers predictable high performance, linear scaling and high energy efficiency.
Apache Cassandra is an open-source NoSQL distributed database trusted by thousands of companies for scalability and high availability without compromising performance. Linear scalability and proven fault-tolerance on commodity hardware or cloud infrastructure make it the perfect platform for mission-critical data.
In this workload brief, we compare Ampere Altra Q80-30 and Ampere Altra Max M128- 30 to Intel® Xeon® 8380 and AMD EPYC™ 7763 processors running Cassandra while measuring the throughput and latencies on each of these processors.
Ampere Altra and Ampere Altra Max are designed to deliver exceptional performance for cloud native applications like Cassandra. They do so by using an innovative architectural design, operating at consistent frequencies, and using single-threaded cores that make applications more resistant to noisy neighbor issues. This allows workloads to run in a predictable manner with minimal variance under increasing loads.
The processors are also designed to deliver exceptional energy efficiency. This translates to industry leading performance/watt capabilities and a lower carbon footprint.
Cloud Native: Designed from the ground up for cloud customers, Ampere Altra and Ampere Altra Max processors are ideal for cloud native usages such as Cassandra.
Scalable: With an innovative scale- out architecture, Ampere Altra and Ampere Altra Max processors have a high core count with compelling single-threaded performance combined with consistent frequency for all cores delivering greater performance at socket level.
Power Efficient: Industry-leading energy efficiency allows Ampere Altra and Ampere Altra Max processors to hit competitive levels of raw performance while consuming much lower power than the competition.
Memory
Connectivity
System
Performance
Cassandra tests were performed on bare-metal single socket servers with equivalent memory, networking and storage configurations for each of the platforms shown. The processors tested here are: AMD EPYC 7763 (Milan), Intel Xeon 8380 (Ice Lake), Ampere Altra Q80-30, and Ampere Altra Max M128-30.
This test was performed using the Cassandra stress as a load generator for benchmarking Cassandra. Each test was configured to run for 3 minutes with multiple threads and multiple clients.
It is recommended to compile Cassandra with JDK-15 (compiled with GCC 10.2 with the right flags) or newer as newer java versions have made significant progress towards generating optimized code that can improve performance for Aarch64 applications.
G1GC was used as the java compiler, with appropriate memory and threads for the jvm. Cassandra data was stored on an NVMe, while commitlog was stored on tmfs.
CentOS 8.4 (kernel 4.18) with Cassandra 4.0.1 were used. For each of the tests, a similar number of clients was used to generate requests to Cassandra.
Since it is realistic to measure throughput under a specified Service Level Agreement (SLA), a 99th percentile latency (p.99) of 10 millisecond was used. This ensured that 99 percent of the requests had a response time of 10 ms in the worst case.
The test ran for 3 minutes with warmup with 90% write and 10% read, which is a critical usage for Cassandra, as Cassandra is optimized for write operations. An appropriate number of clients and threads to load one instance of Cassandra was initially used, while ensuring the p.99 latency was at most 10 ms.
Next, the number of Cassandra instances was successively increased till one or more instances violated the p.99 latency SLA. The aggregate throughput of all instances was used as the primary performance metric. The test was run three times and minimal run-to-run variation was observed
As can be seen in Fig 1, below, we observed up to a 1.33x improvement in performance on Ampere Altra Max compared to Intel 8380. We also observed up to a 1.16x improvement in performance on Ampere Altra Max compared to AMD 7763.
For large-scale cloud deployments, performance/Watt (i.e. energy efficiency) is an important metric in addition to raw performance. Ampere Altra Max processors have 1.9x better performance/Watt under a specified SLA than that on Intel servers and 1.74x higher performance/Watt compared to that on AMD servers.
Ampere Altra and Ampere Altra Max are designed to deliver exceptional performance and energy efficiency for cloud native applications like Cassandra. In Ampere’s testing, these processors demonstrated up to 1.33x performance improvements and they achieved up to 1.9x energy efficiency improvements.
All data and information contained herein is for informational purposes only and Ampere reserves the right to change it without notice. This document may contain technical inaccuracies, omissions and typographical errors, and Ampere is under no obligation to update or correct this information. Ampere makes no representations or warranties of any kind, including but not limited to express or implied guarantees of noninfringement, merchantability, or fitness for a particular purpose, and assumes no liability of any kind. All information is provided “AS IS.” This document is not an offer or a binding commitment by Ampere. Use of the products contemplated herein requires the subsequent negotiation and execution of a definitive agreement or is subject to Ampere’s Terms and Conditions for the Sale of Goods.
System configurations, components, software versions, and testing environments that differ from those used in Ampere’s tests may result in different measurements than those obtained by Ampere.
©2022 Ampere Computing. All Rights Reserved. Ampere, Ampere Computing, Altra and the ‘A’ logo are all registered trademarks or trademarks of Ampere Computing. Arm is a registered trademark of Arm Limited (or its subsidiaries). All other product names used in this publication are for identification purposes only and may be trademarks of their respective companies.
Ampere Computing® / 4655 Great America Parkway, Suite 601 / Santa Clara, CA 95054 / amperecomputing.com