As part of being an Alibaba Cloud MVP Diamond, I get to test from time to time new products from this cloud provider for free, which is a really nice thing to have. In this occasion, thanks to some vouchers I got from the team in Hangzhou, I had the chance to play, for free, with the newest 6th Generation of their ECS Instances.
What Is New On This Generation?
After some time being tested in China, the new 6th Gen Enhanced ECS Instances are generally available. This is a huge milestone for Alibaba Cloud, as this family is using the impressive 2nd Generation Intel Xeon Scalable Processors and means already 11 years of innovation on this matter.
This, alone, is supposed to help with general CPU performance and lower latencies. But the biggest change in this new generation is the usage of a fully in-house-made solution called X-Dragon. Brought to you by the brightest minds inside Alibaba.
Wait, X-Dragon chips from Alibaba Cloud?
Yes, and the idea is quite simple (not so much to execute tho). This 6th Gen ECS instances uses Alibaba’s proprietary X-Dragon platform. The X-Dragon platform consists of the MoC NIC, X-Dragon software, and X-Dragon Hypervisor.
Through this architecture, the management software, network virtualisation and storage virtualisation that usually run on physical servers in traditional virtualisation solutions are offloaded onto the MoC NIC. Guess what? In this way, the servers are fully available to users. Smart.
I was quite lucky to assist last year to the official presentation of the X-Dragon platform during the Apsara Conference in Hangzhou and I’ve been waiting impatiently for it to become available.
Very well, let’s test it!
For this article I made a couple of tests to see, with real numbers on the table, the actual differences of both old and new generation. Let’s do it:
PHP Benchmark
This free PHP performance benchmark script is a free PHP script to calculate benchmark speeds (PHP execution times) of PHP web hosting servers. The free PHP script performs some simple mathematics and string manipulating functions repetitively, and records the PHP code execution time it takes to complete the PHP functions.
ecs.g5.large
--------------------------------------
| PHP BENCHMARK SCRIPT |
--------------------------------------
Start : 2020-12-07 07:50:43
Server : [email protected]
PHP version : 7.4.13
Platform : Linux
--------------------------------------
test_math : 0.262 sec.
test_stringmanipulation : 0.292 sec.
test_loops : 0.156 sec.
test_ifelse : 0.155 sec.
--------------------------------------
Total time: : 0.865 sec.
ecs.g6e.large
--------------------------------------
| PHP BENCHMARK SCRIPT |
--------------------------------------
Start : 2020-12-07 07:50:47
Server : [email protected]
PHP version : 7.4.13
Platform : Linux
--------------------------------------
test_math : 0.219 sec.
test_stringmanipulation : 0.242 sec.
test_loops : 0.124 sec.
test_ifelse : 0.129 sec.
--------------------------------------
Total time: : 0.714 sec.
MySQL Benchmark
For this test we will use mysqlslap
, a handy diagnostic tool that’s been included in MySQL since version 5.1.4. It’s a benchmarking tool that can help DBAs and developers load test their database servers. With mysqlslap
you can emulate a large number of client connections hitting the database server at the same time. The load testing parameters are fully configurable and the results from different test runs can be used to fine-tune database design or hardware resources. The test was made with a concurrency of 100 and 2000 iterations.
ecs.g5.large
Average number of seconds to run all queries: 0.021 seconds
Minimum number of seconds to run all queries: 0.010 seconds
ecs.g6e.large
Average number of seconds to run all queries: 0.015 seconds
Minimum number of seconds to run all queries: 0.009 seconds
Difference in pricing
No big surprises here, the hourly price of an instance doesn’t change much, effectively going cheaper compared with the performance. To put things in perspective, the hourly price of the old “ecs.g5.large” instance was USD$0.114. Now compare that with the hourly price of a new “ecs.g6.large” being USD$0.116.
This means a price increase of around 1.75% with a performance increase of up to +20%. Great news, more bang for your buck!
Conclusion
Well, as we are seeing today, the new generation is a real step-up in compute capacity and it virtually costs the same. If you are running an ECS Instance with a gen5, it is definitely time to make the jump and update. At the very least, this upgrade will get you more bang for your buck!