4

First, I should say I'm running Linux (Mint in case it matters) and my CPU is Intel Core i7-9700K CPU @ 3.60GHz.

I'm running simulations which utilize all 8 cores and they are running at 100%. However, when I run lscpu | grep MHz, I see something like this

CPU MHz:      4600.896
CPU max MHz:  4900.000
CPU min MHz:  800.000 

I have never seen the first line go above 4600 (ignoring decimals). I doubt that the CPU is experiencing thermal throttling because the temperature readouts are less than 60C. I'm also pretty certain the computations I am running should push the CPU to its limits.

Why is my CPU not running at the maximum frequency it has the thermal overhead to do so? Of course I am also interested in any way to fix this too.

1
  • 2
    Have a look with i7z and see what maximum turbo multipliers are set - perhaps a lower multiplier is set with more cores active. i7z displays values of msr x1AD as discussed in this thread 9700K Multiplier Maxes at 45?
    – lx07
    Apr 7 '20 at 18:40
5

I cite from here:

"The Core i7 9700K is an eight-core and eight-thread processor (that's right no Hyper threading) with a boost up to 4.9 GHz on one single-core. However, it can turbo at 4.6 GHz maximum on all cores."

So if all cores are active you will never see more than 4.6 GHz, the CPU is not designed for more than that. You can only reach 4.9 GHz when using one single core.

EDIT: The "k" in the CPU name means you can actually overclock it and most probably reach considerably higher frequencies. This however depends on your mainboard, cooling and power supply (and your expertise in overclocking). But 4.6 GHz is the frequency your CPU can run safely on all cores without overheating and without exceeding its 95W design power.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.