What Are CPU and GPU Computer Bottlenecks? How Do You Detect Them?

“Bottleneck” is a term used to describe one component of a system that holds back the rest of the system from reaching its full potential.

Bottlenecks can be extremely detrimental to productivity. A lot of the time, businesses who have applications with bottlenecks in them will see it heavily affecting their system. This is usually solved by going to a Chicago software company to improve their application but what if the problem isn’t down to the software and instead is the fault of the CPU or GPU? Often when trying to diagnose an issue with a PC’s performance, we will eventually reach the topic of bottlenecking. This is especially common when it comes to maximizing performance in a PC game, where either the CPU or the graphics card may “bottleneck” the system, holding it back from achieving its potential in terms of framerate.

So, what exactly are these bottlenecks? And how do you determine if your PC is suffering from a bottlenecking component?

A bottleneck can also be called a choke-point. It’s a component in the system that is too slow to allow the other components to work at their fullest potential.

First of all, it is important to note that no PC in the world is perfectly balanced in all games, because all games are made differently and stress different components. Some games are more CPU-intensive, while others rely much more on the GPU.

GPU Bottleneck

Let’s consider a PC with an Intel Core i7-7700K, the fastest CPU for gaming currently available. Now let’s say the graphics card is an entry-level RX 550 or GT 1030. Even though the CPU is powerful enough to allow games to run at more than 100 FPS, the graphics cards simply aren’t powerful enough to push any reasonable framerate. This is a GPU bottleneck.

See this chart from HardwareUnboxed for a clear example of GPU bottlenecking:

Steve from HardwareUnboxed does so many different benchmarks that it is always possible to find something interesting. In this graph, we see four different processors running three different graphics cards. As you can see, a dual-core hyperthreaded Pentium G4560 performs the same as a four-core eight-thread Core i7-6700K, independent of the graphics card. In this case, adding a more powerful graphics card (for instance, the GTX 1080 Ti), will increase performance even further, thus we are dealing with a GPU bottleneck. Source: HardwareUnboxed

CPU Bottleneck

Let’s say we pair a cheap Intel dual-core processor, the G3930, with a GTX 1080 Ti. This would create a CPU bottleneck. Even though the GTX 1080 Ti can easily run games at 4K resolution, the Celeron just isn’t fast enough to handle the necessary logic processing and data transfer.

However, if we raise the resolution, the cpu bottleneck will become far less noticeable. At 4K we may see a difference of maybe a few frames between a Celeron and a Intel i7. That is because at higher resolutions the GPU is stressed much more than the CPU, leading to it doing much more work relative to the processor. That gives the CPU “time to think”, which more-or-less equalizes the situation. That does not mean you should pair weak processors with high-end graphics cards if you plan on using higher resolutions, though. The CPU is still responsible for things like loading applications and processing complex CPU-bound effects like shadows, view distance or game logic.

Let’s take a look a benchmark that illustrates CPU bottlenecking:

Civilization VI is a great example of a CPU-intensive game. With the GTX 1050 Ti we can see than an i7-6700K performs just as well as the i3-7350K, which means we are dealing with a GPU bottleneck. However, when we go up to the GTX 1080, we can see that the i7-6700K allows the GTX 1080 to run almost twice as fast as a G4560 would. A GTX 1080 and even a GTX 1060 paired with a G4560 would be bottlenecked by the CPU in Civilization VI. Source: HardwareUnboxed

In this example, we see that increasing the resolution to 4K in some games may change your system from a CPU bottleneck to a GPU bottleneck:

In Battlefield 1 at 4K, all CPUs perform the same if paired with an NVIDIA Titan Xp. An $80 G4560 will perform the same as a $320 i7-7700K or $500 Ryzen 7 1800X. This is because here we see a clear GPU bottleneck, with all the CPUs having enough time to process what is needed, even the years-old AMD FX-8370. Source: HardwareUnboxed

Detecting Bottlenecks

The easiest way to detect bottlenecks would be to get a program like MSI Afterburner and log the CPU and GPU usage while playing a game. If the processor is constantly pegged at 100%, but the graphics card is hovering under 90% usage, then you have a CPU bottleneck. On the other hand, if your GPU is constantly at 100% and the CPU is under 90%, then it’s a GPU bottleneck.

A great of example of what you can see during a CPU bottleneck in the MSI Afterburner logging utility. Notice how the CPU usage is stuck at 100%, while the GPU hovers around 60%. Source: AVADirect

It is generally recommended to always have both components running at 90+% usage. A GPU bottleneck is also always preferred over a CPU bottleneck, as that decreases chances of stuttering and microfreezes. If you are running into a CPU bottleneck, try increasing your resolution. This will more heavily tax the graphics card, leading to the CPU having more time to process what it needs to. Increasing the resolution in the case of a CPU bottleneck may in fact improve 1% and 0.1% lowest framerate performance.

A GPU bottleneck is nothing to be scared of, and not much can be done in this case apart from lowering the settings and/or resolution.

Need to balance out your computer to avoid bottlenecks? Check out the balanced PC builds we suggest on our homepage at logicalincrements.com. You’ll find CPU and GPU combinations that optimize for performance-per-cost with PC gaming.

Sources: