4

I'm trying to understand why my CPUs don't run at higher frequencies (related link)

Can someone explain me how is it possible that when a min and a max are defined, the effective value finally goes out of that range?

$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
3267000
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 
3300000
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq 
1199960


$ cpupower frequency-info
analyzing CPU 0:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 0.97 ms.
  hardware limits: 800 MHz - 3.30 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 3.27 GHz and 3.30 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 1.20 GHz.
  boost state support:
    Supported: yes
    Active: yes
    25500 MHz max turbo 4 active cores
    25500 MHz max turbo 3 active cores
    25500 MHz max turbo 2 active cores
    25500 MHz max turbo 1 active cores

Also, can someone explain the difference between cpuinfo_cur_freq and scaling_cur_freq please?


Related issues I opened to solve my problem (may contain additional infos not mentionned here that could be useful)


Additional info:

$ sudo rdmsr -a 0x19a
0
0
0
0
rdmsr: No CPU 4
3

Depending on your processor, and for yours this is the case, cpuinfo_cur_freq and scaling_cur_freq are the same thing.
For some processors, cpuinfo_cur_freq involves a hardware read and can be "expensive" in terms of time, which is the reason it requires sudo to access.

Your CPU frequency can be outside the limits you have set, because the processor itself can back off on the PLL (Phase Locked Loop) if the load is light enough, and regardless of what you asked for. Don't worry the CPU frequency will spin up very quickly if there is actual work to do. In your case, you are using the performance governor, which will give the fastest CPU frequency ramp up time possible.

For your other referenced question, and as I mentioned over there, I think Clock Modulation is involved, which is a problem for the intel_pstate CPU frequency driver. To confirm or deny if Clock Modulation is enabled please add this result to your question:

$ sudo modprobe msr
$ sudo rdmsr -a 0x19a

Note that the package msr-tools is needed for the rdmsr primitive. I'll decode the information, once provided.

  • thanks for your answer. I've seen other topics where you talk about clock modulation but the problem appears after sleep right? My problem happens directly after reboot, and the frequency seems to become lower when I add load to the cpus (see also: github.com/pyamsoft/pstate-frequency/issues/24). Can it still be related? I can't test right now but I'll take a look at your other answers and try to turn off clock modulation and pstate driver. Thanks – Sebastien Lorber Jul 20 '16 at 21:45
  • I am suggesting that in your case the reasons for Clock Modulation becoming enabled are real. i.e. thermal, and the last line of defense before your processor cooks itself. In addition to what I already asked for, I think output from sudo turbostat --debug sleep 10 might help. – Doug Smythies Jul 20 '16 at 21:55
  • After my last tests with thermald removed and pstate-frequency put to maximum I was able to saw proc temperature to go close to 100°. It is probably that computer tries to protect itself as the junction temp is 105. But that would mean that upgrading my Ubuntu distribution made my computer become hotter than before while running at lower frequency? What could cause that? I'll get turbostat tomorow thanks – Sebastien Lorber Jul 20 '16 at 22:05
  • I suspect your computer vent paths needs to be cleaned. I have a dell XPS-M1730 and I have to clean the vents every 6 months or so. – Doug Smythies Jul 21 '16 at 6:56
  • Hi. I've put the turbostat outputs on the related question (askubuntu.com/q/800797/453923) because it's more suited than here. Unfortunatly I'm not sure how I can open my computer to clean it (never did), the screws are so small and seem to require specific tooling. It looks like my computer allows temperature to become very high underload, and then decide that it's too hot and only let cpu run around 1Ghz. I'd rather have my computer become less hot, and when it's too hot, avoid going back to such a low frequency. – Sebastien Lorber Jul 21 '16 at 8:26

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.