How To Buy The Best CPU In 2017
If you came here looking for, “Buy Threadripper cuz 1337,” you’re going to be disappointed, both in this article and your choices. It doesn’t really work like that.
Think about processors as cars. You probably wouldn’t buy a big truck and think that it’s the best car for drag racing, even it it does have a massive motor with loads of horsepower. Sure, it won’t be as terrible as a 140 horsepower junker, but that’s not what it was built for.
The same is true for CPUs. A server CPU has loads of power, but it’s probably not going to be as good as a relatively inexpensive quad-core CPU for gaming. They were designed for very different things.
This guide is here to help you figure out what you need out of your system, and which CPUs are best for that situation.
Intel Vs. AMD?
For years, it seemed like the debate in buying a processor came down to Intel vs. AMD. To some degree, it still does, but now, it’s more about picking the right too for the job. Intel and AMD each have strengths and weaknesses in their different lines of CPUs. Which you pick will depend a lot oh what you need the processor for.
For example, say you need a really low cost computer for basic tasks, but you still want decent graphical output. There’s two factors there that immediately point to AMD’s APU line of processors. They’re really inexpensive, and they come with a much better built-in GPU than anything else on the market.
There are a couple of near-universal truths about these companies, though. Intel tends to have better single-threaded performance in nearly all cases. Intel also has wider vendor support.
AMD, on the other hand, has unbeatable value for the price, and they tend to excel in heavily multi-threaded tasks.
Single Threaded Vs. Multi-Threaded
So, Intel tends to excel at single threaded workloads, but AMD is better at multi-threaded, but what exactly does that mean? It’s really not as simple as you’d think.
A single threaded program or workload can only run in one stream, executing in order. A multi-threaded workload can be broken down so that multiple pieces of it can be run at the same time.
Now, you can run a multi-threaded workload on a single core CPU, but you won’t really see a benefit from the threading. However, if you run a multi-threaded workload on a multi-core CPU, it will speed up dramatically. The same is true for running multiple programs on a multi-core CPU.
Then, is more cores always better? Unfortunately, not really. Generally speaking, you have to choose between more weaker cores and fewer more powerful ones. Intel CPUs tend to have fewer more powerful cores. AMD usually has much more cores that aren’t as strong.
Hyperthreading refers to a CPU core that can behave like two cores. So, a quad-core CPU with hyperthreading acts like an 8 core CPU. Intel refers to hyperthreading separately, while AMD included it in the overall core count. For all practical purposes, you won’t notice a difference.
There are really only two instances where you’d pick single threaded performance over multi-threaded. Gaming is probably the most prominent one. Games make very poor use of multi-threading, so having greater single threaded capabilities tends to benefit games more.
The other instance where single threaded performance is preferred is lower power machines with few cores. Obviously, if your computer only has two cores, you want to make the most of them. You should keep in mind that these instances are starting to disappear, and soon even low end machines will have at least four cores.
What About Clock Speeds, Cache, Etc.?
Clock speeds are entirely dependent on the way the actual silicon of the CPU is organized and engineered. This is often referred to as the CPU architecture.
An excellent example from recent history is AMD’s Bulldozer and Piledriver CPUS. They were more popularly known as the FX series. Those CPUs could hit up to 5GHz clock speeds, but they were known to grossly under-perform their Intel counterparts at much lower clock speeds. The Intel chips had much better architecture, so they performed better, regardless of the clock speeds. Don’t put too much stock in clock speeds unless you’re comparing two CPUs in the same product line.
Cache is a little different. Cache is intermediary memory for the CPU to use while its processing information. It’s even more volatile and much faster than RAM because it’s used for even shorter lengths of time. Cache is probably not going to make a huge difference in CPU performance unless you’re moving a ton of data through a CPU with a lot of cores.
If your quad core gaming CPU doesn’t have much cache, that’s not a big deal. If your rendering workstation is lacking in the cache department, you’re not going to have a good time.
Almost every other stat that you’ll see on a CPU is heavily influenced by the CPU architecture. The only way to approach it in an educated way is to research the CPU architecture first. Then, if it seems like the right fit, start looking for the right model CPU for you.
A lot of PC builders like fine tuning their new PC after building it. That’s part of the fun. Overclocking plays a big role there. An overclockable CPU allows you to push the clock speeds of that processor well beyond what the manufacturer specified.
If extreme stability is what you’re after, overclocking isn’t going to be for you. No, overclocked CPUs aren’t inherently unstable or prone to failure, but you and you alone are responsible for how that processor functions. Do you want to be responsible for that on a mission critical server? Probably not. Server CPUs usually don’t overclock anyway, so don’t worry about it.
If you’re a gamer or even a professional that feels comfortable performance tuning your machine, overclocking can be a huge benefit. With adequate cooling, many modern CPUs can reach clock speeds nearly 1GHz higher than they are originally set for. That’s a huge difference for the exact same price.
Overclocking can be dangerous. You need to keep CPU and motherboard voltages below or near the manufacturer’s specifications. Heat is the bane of electronics, and overclocking can generate a whole lot of it. If you plan on overclocking your processor, make sure that you have a substantial cooling solution to support it.
Currently, Intel’s CPUs that have a model number ending in “k” or “x” are the overclockable ones. AMD’s entire Ryzen lineup can be overclocked.
Virtualization isn’t really common for most desktop users. It’s massively popular in the server market, and many workstation users rely on it too. Virtualization is a technology that allows a computer to run multiple virtual computers within itself. So, instead of just having your one base operating system install, your operating system would be the “host” and would run a piece of software called a “hypervisor.” That hypervisor would support one more more additional “guest” operating systems that run self-contained. That’s an oversimplification, of course, and if you don’t have any idea why someone would need it, you probably don’t.
If you’re building a server, you need virtualization. Almost all server hardware runs virtual machines. They allow services to be separated and/or distributed for efficiency and ease of management.
Plenty of workstation users like virtual machines too. Take developers for example. They often need to test out their code on multiple different operating systems and operating system versions. It’d be terrible to need that many computers, but virtualization allows them to have as many as they need all on their regular workstation.
For Intel CPUs, virtualization is enabled through VT-x. AMD processors use AMD-V. Most, if not all modern CPUs support at least this basic form of virtualization. If it’s a feature that you need, make sure before purchasing, though.
In more advanced cases, you need direct access to your hardware devices from virtual machines. For example, cloud compute servers would need their virtual machines to be able to access a battery of GPUs for computational performance. This would be true for developer workstations where the software being tested requires GPU acceleration. If you’re a Linux user and a gamer, you’re familiar with GPU passthrough for playing Windows games in a virtual machine.
In any case, device passthrough is usually only supported on higher end hardware. In Intel processors, the virtualization technology is VT-d. With AMD, it’s AMD-Vi. Intel’s gaming CPUs, the ones that end in “k,” often don’t support this feature. Most AMD CPUs do.
ECC stands for error correcting code. It’s special code that’s embedded in RAM to prevent rare random data corruption. While it really isn’t all that common, it can happen, and does in higher volume workloads.
Servers and workstations benefit most from ECC capabilities. Servers are running 24/7/365. They never stop, and they can’t afford to. Data corruption can cause service outages for thousands of people, or worse, lost or incorrect data. If that happened at your bank, you wouldn’t be happy. ECC memory helps to prevent this problem from ever happening.
Workstations that process massive amounts of data can also benefit from ECC. Tasks like rendering 3D models and animations can take dozens of hours at a time, even on high end hardware. You wouldn’t want to get to the end of that process only to find out that the render got corrupted somewhere along the way, and you need to start again.
Because of the specialized nature of ECC memory, most CPUs don’t support it. If you need ECC, and you want Intel, you’ll have to stay withing the Xeon family. AMD has a history of supporting ECC, even on desktop products. That continues with Ryzen. Ryzen ECC support is based on the motherboard, though, so select a board that supports ECC, and Ryzen will too.
The Right Tool For The Job
You need to base your choice in CPU on the task that you’re going to be using it for most. Choose the CPU that excels most at that task. If you’re looking to do multiple things with your computer, either pick the most important thing or look for a CPU that falls somewhere in the middle ground between what you need.
Gaming isn’t well multi-threaded. In fact, most games can only make use of up to four CPU cores. Because of that, games benefit most from more powerful individual cores. That usually means Intel CPUs.
Something interesting is happening in the gaming world. Games aren’t even using quad core CPUs to their fullest. Some PC builders are intentionally seeing how low they can go in selecting a CPU. There are budget gaming machines out there with Intel Pentium CPUs and high end graphics cards because games are much more dependent on the GPU than the processor.
There is something else to take into account with a gaming PC, streaming. Do you plan on streaming your games while you’re playing? If you do, or plan on running other programs while you’re playing a game, you might want to consider a CPU with more cores anyway. The extra cores won’t improve your game’s performance, but they will help you run more programs, like streaming software, while you game.
3D work is insanely multi-threaded and relies heavily on GPUs to assist in rendering tasks. You need both a CPU with sufficient cores and RAM support as well as one more more powerful GPUs.
Becasuse of the need for loads of CPU cores and the high RAM requirements, it’s really not possible to use a standard desktop CPU for 3D work, except for AMD Ryzen R7 CPUs, and they’d be the budget option.
…Sorry Intel, you really lost here.
First off, it’s going to be extremely rare that an office builds custom PCs, but in the event that they do, a balance between price and performance is probably going to be best. Most office workers don’t need loads of computational power, but they would benefit from moderate multitasking capabilities. Quad-core CPUs would actually be ideal in this situation.
…There’s no need for high end machines here.
Server chips are yet another area where multiple cores are essential. Unlike 3D work and CAD, the speed of the individual cores is usually less important. Individual server tasks are usually light weight(unless you’re talking big data or cloud compute), but there are sometimes thousands of these smaller tasks coming in at once. Server CPUs need as many cores/threads as possible with near infinite RAM support.
That’s the generality of server use, though. If you’re setting up a simple home file server, you can use a Raspberry Pi, and it’d probably be fine.
For a small business server or even a more sophisticated home setup, Intel’s E3 series Xeon CPUs or even AMD’s Ryzen run with ECC memory would be great.
Larger deployments get much more complex, and there’s no way to say for certain what you need in a short overview like this one. This is the territory where multi-cpu configurations with $1000+ chips get thrown around like nothing. AMD’s Epyc CPUs and Intel’s Xeon E5 and E7 processors are best for these situations.
Encryption cracking and cryptocurrency mining are both handled on GPUs way more than CPUs. These kind of tasks are so far out of the league of CPUs, it’s usually not worth trying. Get yourself at least one good GPU, and you’ll be much happier.
With that said, if you do want to use your CPU for more minor encryption related tasks, multi-core and multi-threaded is the way to go. Consider the Ryzen R7 line. They’ll be the best bang for your buck right now.
Closing Thoughts And The Future
No one knows what the future will hold. Before the launch of Ryzen earlier this year, AMD wasn’t even a contender in the CPU market. Now, they’ve dominated this article, much like they’re dominating popular opinion in a lot of communities.
You always need to read reviews and benchmarks, and you’ll always need to consider what you’re going to be using the computer for. It’s probably a safe bet that the CPU market is going to see ballooning core counts in the coming years with even faster clock speeds and greater power efficiency.
The only real way to “future proof” your computer is to buy overkill parts. Try to buy the best part within your particular market segment, and don’t cheap out on your other components. That’s the best way to ensure that your computer will remain functional and enjoyable for at least the next few years.