Memcached is an open source, high-performance, distributed memory object caching system. It is a popular choice for powering real-time applications in web, mobile apps, gaming, ad-tech, and e-Commerce. Memcached is an in-memory key-value store that offers higher application performance by removing the need to access disks or SSDs. By keeping its data in memory, it avoids delays and can access data much faster than traditional disk-based databases.
In this blog, we compare the throughput of Memcached on two types of Alibaba Cloud ECS instances, to show the performance advantage of Arm. G8y instances, powered by the Alibaba Yitian 710 processor based on Armv9, represent Arm. G7 instances, powered by 3rd Generation Intel Xeon Scalable processors, represent x86.
We used Memtier as the load generator and performance benchmarking tool. It is an open-source high-throughput benchmarking tool for Memcached. Memtier was deployed on separate ECS instance.
For the Memcached server, we deployed multiple Memcached processes on each core.
Figure 1. Memcached benchmarking topology
The server under test has two ECS instances with the following configurations. The benchmark client used a single G8y.8xlarge instance.
Table 1. Test server configurations
The benchmark tests were performed with the following software versions and test parameters.
We use 8 Memtier clients to generate requests for 8 Memcached processes simultaneously, each Memtier client created 8 threads with 10 clients per thread, which gave 80 simultaneous connections (sessions). Pipeline 1, 50 and 100 was used in this test. Pipeline values greater than 1 can be used for bulk data transfers to increase the throughput of the application.
After enabling XPS (transmit packet steering), RPS (receive packet steering) and RFS (receive flow steering), the performance on both instances can be improved. We observed up to 41% performance benefit of running a Memcached database on Yitian 710 based instances compared to equivalent x86-based instances. The result shown in the following tables is an aggregated result of 30 consecutive test runs.
Let us look at the performance numbers of Memcached on G8y and G7 instances. We compared the throughput (Operations/Sec) values after multiple test runs.
Table 2. Memcached throughput performance results on G8y vs. G7
Figure 2. Performance gains for G8y vs. G7 instances
To conclude, Memcached deployed on Yitian 710 based ECS provides up to 41% more throughput compared to equivalent x86-based ECS instances. In addition, G8y instances are priced 20% less than comparable G7 instances.
More workload blogs