It’s quite common for people to overclock their CPUs. But this same principle can be applied to almost all elements of a modern computer system.
You can, and often even should, change some of the values found in your BIOS if you want to get the most out of your system.
This principle isn’t just about your processor either. Even components like RAM can be overclocked, underclocked, or modified to get better overall performance.
But to do so you’ll also need to understand some less talked about components of RAM. In particular, FCLK, MCLK, and UCLK frequency.
What is FCLK (Infinity Fabric Clock) Frequency?
FCLK, or Infinity Fabric Clock, leverages a special component of AMD systems called infinity fabric.
You can think of infinity fabric as somewhat akin to threads of actual fabric which link separate computing components together.
This concept can be used in a number of different ways within computational architectures. But AMD in particular uses it to work with more modular designs.
For example, by creating multiple cores that can work in unison because of the higher communication speed provided by infinity fabric. But the fabric’s clock speed is the ultimate limiting factor.
You can think of the clock speed as somewhat analogous to a road’s speed limit. In theory, you’d want everything to run as fast as possible. But imagine what would happen on a road if every car could just go at its maximum speed.
The road would quickly turn into a clogged mess since every car has a different maximum speed. And a similar concept is seen with the infinity fabric.
Communication frequency needs to be regulated so that everything will run smoothly on your computer. And this is where FCLK comes into the picture.
The FCLK frequency will ideally be set to match another value that’s part of the larger system – memory controller frequency (MEMCLK or MCLK).
For a long time, FCLK was directly tied into the system’s substate. It wasn’t really mutable or open to configuration in the way most people think of it today.
But FCLK was eventually opened up to larger-scale access. And now it can be modified from your system’s BIOS. At least assuming that the motherboard and its drivers are compatible.
What is MCLK (Memory Controller Frequency)?
MCLK (or MEMCLK), the memory controller frequency, roughly describes how fast your RAM operates. It is the actual physical clock frequency that runs on your RAM chips.
However, over time the term has become a little more fuzzy than it used to be. And this is also why people work with 1/2 the RAM speed when calculating MCLK and FCLK.
RAM originally ran at a set speed for most operations. But you’ve probably noticed the term DDR on RAM before.
DDR stands for double data rate. It, and similar technologies, maximize the RAM’s data rate by modifying performance independently of the raw MCLK.
In the case of DDR, this means doubling the data rate by transferring data on both the rising and falling edge of the memory chip clock signal.
So DDR4-3600 would have a data rate of 3600 MHz, but the actual MCLK would be half that, 1800 MHz.
This is why the FCLK and MCLK are based on 1/2 of a system’s RAM speed. FCLK goes by the RAM’s unadjusted memory controller frequency.
What is UCLK (Uncore Clock frequency)?
The UCLK memory controller sits within your CPU and regulates data between the RAM and processor.
It too is generally set at the same speed as the FCLK. Latency is one of the biggest concerns with UCLK.
This isn’t something you’ll generally need to worry about if the UCLK is running at the same speed as the FCLK.
But the UCLK could introduce additional latency if it’s running significantly slower than the FCLK.
This would potentially negate the benefits of higher-speed RAM. As such it’s important to make sure that a processor’s UCLK can properly match the speed of the FCLK.
What Should the FCLK Frequency be?
All of the prior information brings up the most important question. What frequency should you run FCLK at?
It’s generally best to configure FCLK to run at half the RAM clock speed. And remember that this is also based on the slowest RAM in your system if you’re using multiple types in the same machine.
So if you were using RAM running at 3200 MHz then you’d want the FCLK (and MCLK) to run at 1600 MHz.
Likewise, as a general rule, you want FCLK, MCLK and UCLK to run at the same frequency as well in order to be on the safe site and keep consistent synchronization of the whole system regarding RAM clock speeds.
So the chain of value essentially starts with RAM clock speed divided by two and applied to FCLK. Then the FCLK value is also applied to MCLK and UCLK (synced together).
Or, in other words, FCLK = MCLK = 1:1 = RAM frequency/2.
Note that you do still have some leeway to change these values even when sticking to the 1/2 RAM rule.
Like most other elements of your computer, the RAM can often be overclocked as well. And the FCLK frequency, along with values derived from it, may change as your overclocked RAM speed changes.
However, the rule of thumb is to leave the FCLK and MCLK at their default values, which are usually ½ of the DDR RAM clock speed value.