Cavium ThunderX2 Power Consumption
Before we get into this section, we wanted to make a few notes clear. First off, our silicon was an early version that was not screened and binned for power. We were told that our power consumption results may be 10-15% higher than shipping parts. Second, TDP does not equal power consumption. There are very strange comparisons that happen based on TDP. Each vendor calculates TDP differently so seeing what total power consumption is at the system level is relevant for your TCO calculations.
Our Gigabyte/ Cavium ThunderX2 Sabre development platform hit a peak of 823W at 100% load. We think that there are likely optimizations that can occur at the system’s firmware level, and by using GA power binned chips. At first, we thought that these numbers were way out of line so we discussed them with Cavium and that is when we were told that the ~800W range was correct for our system and pre-production chips. The company also told us that the production systems will have firmware that is better power optimized. As a result, we are not going to publish a direct comparison until we can get a mature Cavium ThunderX2 platform with production chips and system firmware. This may take some time, but publishing a comparison using the Sabre platform and the unbinned silicon is disingenuous.
Note these results were taken using a 208V Schneider Electric / APC PDU at 17.8C and 71% RH. Our testing window shown here had a +/- 0.3C and +/- 2% RH variance.
Cavium ThunderX2 Competition
Processors are not launched in a vacuum. Instead, they are launched in a market with several other competitors. We are going to leave IBM Power out of this discussion and focus on five main contenders in this segment. Here is a quick comparison table of Intel Xeon Scalable, AMD EPYC 7000, Cavium ThunderX2, Ampere eMAG, and Qualcomm Centriq 2400.
At the end of the day, you can see how the Cavium ThunderX2 compares to the x86 offerings. It offers more cores but like the x86 offerings can be used in the dual socket architectures that are prevalent today. In some ways, the Cavium ThunderX2 mirrors the best of the x86 offerings. It has 8 channel memory and 32 cores per CPU, but it does so while only requiring two NUMA nodes.
When you look at the Ampere eMAG and Qualcomm Centriq 2400, they are completely different classes of CPUs. They are single socket only with far lower thread counts. The industry has largely standardized on dual socket platforms although there are some niche platforms such as the Intel Xeon D-2100 that operate in the lower power single socket arena. For Cavium, these are a net positive in the market. The Arm players need to speed the pace of adoption, porting, and proliferation to help the ecosystem.
On the other hand, as hard as Ampere and Qualcomm try to market their offerings as direct competitors, they are single socket only. That makes them equivalent to trying to sell motorcycles to automobile buyers. Sure, you can buy two and get four wheels and potentially less energy consumption, but if you are looking for a car, two motorcycles do not make a car.
In 2016 when we saw the first Cavium ThunderX we concluded by saying: If you are a data center Arm developer in the summer of 2016, the Cavium ThunderX machines are the 64-bit Arm platform to get. In 2018, the picture is different. Running simple services on Linux has gone from requiring developer help to simple DevOps and application team deployment since the vast majority of features work out of the box. In 2018 aarch64 is a first-class architecture for the ecosystem including Ubuntu, RedHat, and SUSE along with major tools such as Docker. There is an enormous difference between what we saw in 2016 and today showing how well the open source development community has come together and committed to building Arm infrastructure and tooling.
From a price/ performance standpoint, the Cavium ThunderX2 CN9980 is a great chip. If you are serious about Arm development, you need to get a cluster of these servers running. Unlike with the previous generation, this is not just a development platform. It is ready to deploy into the data center today.
The biggest challenge the ThunderX2 will face in this generation is not platform stability or the ability to use the systems to run open source software or software that a company compiles itself. The biggest challenge is breaking into an existing ecosystem where essentially everything is x86. Enterprises are still going to have to decide whether the price/ performance benefits are worth sacrificing the ability to redeploy a node into an existing x86 cluster with live migration features.
At the end of the day, to overcome the next set of challenges, the Arm ecosystem needed the ThunderX2. It is a competitive current-generation product that you can deploy, remotely manage, and maintain using existing tools. The price/ performance is where it needs to be to be useful and that performance is accessible using gcc, the most common open source compiler in the Linux ecosystem.