|Overclocking the Perfect Computer
This blog post is part of a series on my experience building the perfect computer.
Before you start to decide what type of performance you require, you should put yourself into one of two categories:
1. Gamers: are you someone who uses your computer to play video games? For gamers, the number of threads and quantity of memory is less important than their speed.
2. Creators: do you plan to use your computer mostly for work, building code, rending video, graphic design, etc.? This user category wants more threads on their CPU (at least 20) and a higher quality of memory (at least 32GB). Most creators are also willing to sacrifice some cooling performance of exotic, more complicated cooling systems for the sake of reliability. GPUs are less important for most and will often be chosen based on the number of monitor outputs.
VCORE is the voltage the CPU will receive, set in bios.
VID should drop under load.
VDROOP: The vcore difference between idle and load, which can be eliminated by Load Line Calibration.
Many people say that it is not worth overclocking many top-end CPUs since they come with features that automatically increase speed based on your cooling efficiency.
AMD has a system called Precision Boost Overdrive (PBO). However, I found that PBO ended up as part of this is due to what is called the Silicon Lottery. Each individual CPU can have small variations in its manufacturing that can have enormous implications for performance.
A CPU's speed, also known as frequency, is measured in gigahertz (GHz). The higher the speed, the more performance you get.
Originally, each CPU had a single core. As technology improved, we were able to fit multiple cores onto a single CPU. Current CPUs can have several dozen cores, and each core can complete one unit of work at a time, known as a thread. Newer CPUs can create two virtual cores for each physical one (known as Hyperthreading in Intel CPUs), allowing processors to effectively have two threads per core (for instance, my AMD 3950x has 16 cores and 32 threads). If you are a creator building a workstation, the more cores, the better. If you are a gamer, you should opt for a higher speed over more cores since many games do most of their processing on a single core.
I found that if I statically set the frequency and voltage on my CPU, it runs cooler and faster than if I leave it on automatic.
Overclocking is based on two parameters: voltage and speed.
The first step is to determine the generally accepted voltage range for your CPU. The manufacturer sometimes provides this, but in my case, I had to look on forums to find that the prevailing wisdom is that it should be between 1.3v and 1.45v.
As you increase the voltage, the processor's maximum possible speed also increases, but so does your temperature and the possibility of damaging your CPU. Suppose you go above the maximum voltage prescribed for your model. In that case, you will almost certainly damage your CPU, but there have been some instances where voltages towards the upper limit can cause degradation over time, although these can be hard to verify.
To determine which specs you should use for your CPU, choose a voltage within your range and a CPU speed. Boot up your computer and run a Stress Test to determine whether your selected combination is stable. If your processor is not stable at the levels you choose, either your computer will crash, or the stress test tool will inform you that it has detected some instability.
If any instability is detected, you can either decrease the speed or increase the voltage (while staying within a range that you are comfortable with). I would recommend changing in tiny increments (e.g., 0.1) to find a combination that works for your specific CPU. Once you find a combination that seems to work, run an additional extended stress test (e.g., 8 hours) to ensure that it is suitable for the long-haul.
Measuring Stability and Performance
For each combination of voltage and speed, you should measure the following metrics:
Measured in gigabytes, an essential part of memory is the quantity that you have. The more memory you have, the more programs can be actively running on your computer.
The second thing to consider is speed, measured in Megahertz (Mhz). 3,600 Mhz memory is considered relatively good, but you can get memory up to about 5,000 Mhz or faster if you are willing to water cool it (but that is very rare).
Finally, memory timing is the most obscure aspect of performance and includes four different components, usually represented in a hyphenated form (e.g., 18-19-19-39). Memory timing consists of the following measurements involving Column Address Latency (CAS) and Row Address Latency (RAS):
Although I don't pretend to understand these metrics' subtleties, I can say that lower timings are better. By default, the memory will run slower than advertised, known as the Serial Presence Detect (SPD) Rate. To get the promised performance out of your memory, you need to manually ensure that it runs at the advertised or tested rate. Some memory has what functionality is called Extreme Memory Profile (XMP), which automatically loads the advertised rate. Ensure that it is working correctly. Many people have reported that after activating XMP, their memory performance is still not as advertised (you can verify the timings set on your memory using a tool such as CPU-Z).
Set the advertised values for your memory into your bios to be sure. As long as you have effective air cooling in your computer, this will not cause any damage. If you want to take things a step further, which I did not do, you can even overclock your memory.
The most common overclocking is done on CPUs. However, you can also overclock a lot of other parts of your computer like your memory, GPU, and even motherboard chipset.
Tools and Utilities
Weirdly enough, there isn't a single ultimate tool for measuring performance while overclocking your computer. Instead, each tool has its strengths and weaknesses, and functionality usually overlaps between them. Even amongst the most popular tools, you will often get vastly different metrics. Therefore, I would suggest downloading many other tools and figuring out what works best for you.
|AIDA64||A paid tool that does pretty much everything, all in one place.|
|Cinebench||A widely-used tool to compare performance.|
|Core Temp||An excellent simple tool for measuring CPU Load.|