Why Clouds’ Use of Multi-Core Server Virtualization Might be Costing You a Lot of Money
Cloud, VMs, IaaS, and VPS providers almost exclusively use large core count CPUs and slice up those servers into smaller chunks. This works great for the provider as they can slice a single server up many different ways to maximize the number of clients and VMs per server. Unfortunately, for many use cases, this approach costs users in many ways and drives up the effective solution cost. Here’s why those high core count CPUs are less efficient for most users;
Note that for this article a Core refers to a physical core, vCore refers to either a physical or hyper-threaded core.
How Modern High-Core Count CPUs Work
It used to be that a CPU had one core and ran at say 1GHz and always ran at the same speed, today’s CPUs have up to 64 Cores running at varying speeds depending on the workload. What you will often see is something like a common dual E5-2673v3, where the full Passmark for all 24 Cores is 21,751. A single Core will get a Passmark of 1666. The fully loaded dual CPU performance of each Core is 45% less because as the load increases, each Core slows down a little. The result is that you could see a variance of up to 45%, depending on how the server is being used by other users, and all of that is hidden from you because you have no visibility into the total server usage.
Cores vs Frequency
Another dimension of performance is the frequency of the Core, and in general, as Core counts increase the base/max frequency decreases. For a lot of workloads, the frequency of the Core is going to have the most direct impact on how quickly something executes. For example, that same E5-2673v3 has a base frequency of just 2.4GHz and a max frequency of 3.1GHz, compared to a 6 Core E5-2643v3 base frequency of 3.4GHz and max of 3.7GHz. While many applications can take advantage of multiple cores, there are still a lot of applications that work best on a lower count of high-performance vCores. Sometimes more cores = more speed, sometimes they do not.
High Core count CPUs allow VPS and Cloud vendors to overcommit their resources to increase their profit margins. If you have a server with 40 vCores, you should be able to rent 8 vCores to 5 customers. Instead, most vendors will rent 8 vCores to 7,10 or more clients. It works most of the time because most customers aren’t using 100% of their capacity at the same time. The result is a noisy neighbor issue, where one client’s usage can impact another client’s resources. One day something takes 5 min and the next it takes 8 minutes, with no indication as to why.
How this Impacts Performance and Software Licensing Costs
Most commercial software is licensed per core, and in virtualized environments such as VPS and Cloud, the hyperthreaded (HT) core often needs a separate license. In combination with high Core count, lower performance servers and oversubscription, the net effect could easily be increasing your net software licensing costs by 4-7X. With software costs that are often 2-5X the server cost on an amortized basis, optimizing your hardware can result in significant savings.
A Better Alternative with Bare Metal Hybrid Cloud Servers
Today, Bare Metal Cloud Servers can be customized to your specs (up to 5GHz) very quickly and you can be up and running in a few days, sometimes even hours. With 8C8’s unique network you also enjoy low latency connectivity to AWS and Azure to enable hybrid solutions. In many scenarios, bare metal is much more cost-effective than AWS, Azure, Google Cloud, and other clouds. You no longer have to pay for more cores than you need to get the right memory or storage configuration.
To find out if Bare Metal Cloud Servers is a great option for your business, get an enterprise hosting specialist to analyze your specific situation and recommend the solution that best fits your needs.