When you're buying a server, the CPU is the most significant component on your spec sheet. Choosing one has become more difficult these days thanks to the increase in server cores. Today, you can buy servers with dozens of cores. But what does this mean, and how many do you need?
Intel used to build mainstream enterprise-class CPUs that only did one thing at a time. They'd take an instruction from the queue, process it, and then move on. The company would boost performance by increasing clock speed, which is the frequency at which electricity flowed through the chip. The faster the frequency, the faster it could process instructions. It would also make chips using smaller transistors, which also increases performance.
These two things weren't compatible. You can only drive clock speeds so high before electrical interference starts to degrade the reliability of the chip, and that interference worsens as components get smaller. So at the start of the 2000s, the company delved into parallel computing.
It began with hyper-threading. This presents a single physical CPU as two logical 'cores' to the operating system. It uses internal logic to act as though each chip is sharing the load. While one chip waits for an instruction to finish executing, the other chip gets on with something else.
Since then, Intel and others have introduced chips with multiple physical cores. Servers were always good at handling multiple queries from users by putting them in a queue. The queue is still there, but now multiple cores can process queries at once to serve them faster, just like increasing the number of checkouts at your local supermarket.
So, more cores is good, right? Well, yes, but sizing server CPUs is trickier than you might think. You can't always just throw more cores into a box and expect it to scale. Here are some factors to think about:
As with any server sizing operation, you need to understand your workload before you calculate your computing power. This metric will depend on your application. Concurrent users is often a good measure for web applications, whereas batch analytics might need to consider data volume and processing time. Use historical data from your existing systems to find a baseline.
An application running on a server must be able to support multiple physical cores. Most do these days, but it's worth checking with your vendor first. Then, it's important to check their licensing conditions. Most vendors will license their applications on a per-core basis, meaning that you'll pay more per core.
Most IT shops these days will virtualise their workloads, running multiple virtual machines (VMs) on a single physical box. Each of these will use some combination of physical cores that you define.
Size your physical CPU count according to the number of VMs you expect to run. A general rule of thumb is to run four virtual CPU (vCPU) VMs per physical core, but again, specific workloads may have differing requirements.
Don't allocate your physical cores entirely with vCPUs. You'll need a spare physical core just in case all the VMs need to request access to physical CPU power at once.
A physical core is only as good as the other computing resources that support it. It needs enough memory to do its job. Simply dividing total system memory across the number of cores will give you the average per-core RAM count, although you can divide memory as you see fit between each VM. Vendors will often recommend a minimum per-core memory count for different application types.
Similarly, ensure that each core has enough disk storage to support all the VMs you're putting on those cores, with around 20% extra for managing things like VM snapshots (where you save a version of your VM to disk so that you can restore it later).
Finally, be sure that there is enough network resource. Multiple VMs can share a single network interface card (NIC), but as workloads increase it makes sense to install multiple NICs to keep up with traffic from the multiple VMs that a higher core count will support.
Ultimately, your server core count will depend on your specific IT environment and workloads, but this guide at least offers some factors to consider.
Check out the popular servers & accessories below - limited stock available