CPU not running at full speed

Hi, I installer OpenSUSE Leap 15.2 a few days ago and my CPU (Intel® Core™ i5-8250U) never runs at full speed (3.40Ghz). My computer is a DELL Inspiron 5570 notebook. I tried using the above commands:

cpupower frequency-set -g performance
cpupower frequency-set --min 3400000

but even after doing it this is the “cpupower frequency-info” output:
{
analisi della CPU 0:
driver: intel_pstate
CPU che operano alla stessa frequenza hardware: 0
CPU che è necessario siano coordinate dal software: 0
latenza massima durante la transizione: Cannot determine or is not supported.
limiti hardware: 400 MHz - 3.40 GHz
gestori disponibili: performance powersave
gestore attuale: la frequenza deve mantenersi tra 3.40 GHz e 3.40 GHz.
Il gestore “performance” può decidere quale velocità usare
in questo intervallo.
current CPU frequency: Unable to call hardware
current CPU frequency: 2.03 GHz (asserted by call to kernel)
boost state support:
Supported: yes
Active: yes
}
The CPU is always 100% used because I’m running BOINC. I also tried adding “intel_pstate=enable” to kernel options (from Yast-> Boot loader) and disabling hyperthreading from BIOS but nothing changes.
What can I do? Thanks in advance.

Hi and welcome to the openSUSE Forums!
Maybe you have to print the values for all cores, since not all can run at the maximum frequency at the same time. Try something like the following:

LT_B:~ # cpupower monitor -m Mperf
    | Mperf              
 CPU| C0   | Cx   | Freq  
   0|  0.66| 99.34|  2828
   4|  0.67| 99.33|  2855
   1|  0.33| 99.67|  2827
   5|  0.69| 99.31|  2868
   2|  0.74| 99.26|  2701
   6|  2.74| 97.26|  3145
   3|  1.15| 98.85|  2933
   7|  0.48| 99.52|  2650
LT_B:~ #

or:

LT_B:~ # cpupower -c all 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:  Cannot determine or is not supported.
  hardware limits: 800 MHz - 3.60 GHz
  available cpufreq governors: performance powersave
  current policy: frequency should be within 800 MHz and 3.60 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency: Unable to call hardware
  current CPU frequency: 2.83 GHz (asserted by call to kernel)
  boost state support:
    Supported: yes
    Active: yes
analyzing CPU 1:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 1
  CPUs which need to have their frequency coordinated by software: 1
  maximum transition latency:  Cannot determine or is not supported.
  hardware limits: 800 MHz - 3.60 GHz
  available cpufreq governors: performance powersave
  current policy: frequency should be within 800 MHz and 3.60 GHz.
                  The governor "powersave" may decide which speed to use
                  within this range.
  current CPU frequency: Unable to call hardware
  current CPU frequency: 2.77 GHz (asserted by call to kernel)
  boost state support:
    Supported: yes
    Active: yes
...<snip>

And please paste output between CODE tags (the # button above the editing area) including the leading prompt, command, and trailing prompt, so we can understand what you exactly did and saw.
You may find additional information here

Thanks for your response, OrsoBruno.
I’m sure my CPU is not running at full speed because on Windows, when it is 100% used, the pc becomes way more hot than now and the fan runs at full speed.
Here is what you asked for:

guido@dell-5570:~> sudo cpupower monitor -m Mperf
[sudo] password di root:  
    | Mperf               
 CPU| C0   | Cx   | Freq   
   0| 99,29|  0,71|  1872
   1| 99,29|  0,71|  1872
   2| 99,29|  0,71|  1872
   3| 99,29|  0,71|  1872

guido@dell-5570:~> sudo cpupower -c all frequency-info
analisi della CPU 0:
  driver: intel_pstate
  CPU che operano alla stessa frequenza hardware: 0
  CPU che è necessario siano coordinate dal software: 0
  latenza massima durante la transizione:  Cannot determine or is not supported.
  limiti hardware: 400 MHz - 3.40 GHz
  gestori disponibili: performance powersave
  gestore attuale: la frequenza deve mantenersi tra 3.40 GHz e 3.40 GHz.
                   Il gestore "performance" può decidere quale velocità usare
                  in questo intervallo.
  current CPU frequency: Unable to call hardware
  current CPU frequency: 2.07 GHz (asserted by call to kernel)
  boost state support:
    Supported: yes
    Active: yes
analisi della CPU 1:
  driver: intel_pstate
  CPU che operano alla stessa frequenza hardware: 1
  CPU che è necessario siano coordinate dal software: 1
  latenza massima durante la transizione:  Cannot determine or is not supported.
  limiti hardware: 400 MHz - 3.40 GHz
  gestori disponibili: performance powersave
  gestore attuale: la frequenza deve mantenersi tra 3.40 GHz e 3.40 GHz.
                   Il gestore "performance" può decidere quale velocità usare
                  in questo intervallo.
  current CPU frequency: Unable to call hardware
  current CPU frequency: 2.07 GHz (asserted by call to kernel)
  boost state support:
    Supported: yes
    Active: yes
analisi della CPU 2:
  driver: intel_pstate
  CPU che operano alla stessa frequenza hardware: 2
  CPU che è necessario siano coordinate dal software: 2
  latenza massima durante la transizione:  Cannot determine or is not supported.
  limiti hardware: 400 MHz - 3.40 GHz
  gestori disponibili: performance powersave
  gestore attuale: la frequenza deve mantenersi tra 3.40 GHz e 3.40 GHz.
                   Il gestore "performance" può decidere quale velocità usare
                  in questo intervallo.
  current CPU frequency: Unable to call hardware
  current CPU frequency: 2.07 GHz (asserted by call to kernel)
  boost state support:
    Supported: yes
    Active: yes
analisi della CPU 3:
  driver: intel_pstate
  CPU che operano alla stessa frequenza hardware: 3
  CPU che è necessario siano coordinate dal software: 3
  latenza massima durante la transizione:  Cannot determine or is not supported.
  limiti hardware: 400 MHz - 3.40 GHz
  gestori disponibili: performance powersave
  gestore attuale: la frequenza deve mantenersi tra 3.40 GHz e 3.40 GHz.
                   Il gestore "performance" può decidere quale velocità usare
                  in questo intervallo.
  current CPU frequency: Unable to call hardware
  current CPU frequency: 2.06 GHz (asserted by call to kernel)
  boost state support:
    Supported: yes
    Active: yes

guido@dell-5570:~> sudo cpupower frequency-info                  
analisi della CPU 0:
  driver: intel_pstate
  CPU che operano alla stessa frequenza hardware: 0
  CPU che è necessario siano coordinate dal software: 0
  latenza massima durante la transizione:  Cannot determine or is not supported.
  limiti hardware: 400 MHz - 3.40 GHz
  gestori disponibili: performance powersave
  gestore attuale: la frequenza deve mantenersi tra 3.40 GHz e 3.40 GHz.
                   Il gestore "performance" può decidere quale velocità usare
                  in questo intervallo.
  current CPU frequency: Unable to call hardware
  current CPU frequency: 2.15 GHz (asserted by call to kernel)
  boost state support:
    Supported: yes
    Active: yes

Indeed all four cores are busy at 100% and the frequency looks like it is limited by some thermal management setting.
The i5-8250U you are using has a nominal TDP (Thermal Design Power) of 15 W, but that can be configured up to 25 W or down to 10 W.
Apparently your system might be limited to 15 W under Linux, while the laptop firmware might be able to scale up to 25 W under Win*.
Unfortunately I don’t know enough about that processor and cannot be of much help here. Maybe there is a boot parameter to scam the firmware as you were running Win*.
Hope that an HW or kernel expert reads this thread and is willing to offer more insight.
Meanwhile, you might look in the firmware (BIOS) settings for something related to power or frequency.

Hi
You could disable intel_pstate instead of enabling, it should switch to intel_cpufreq (or ahci_cpufreq) instead.

I just did what you said, now the driver is acpi-cpufreq and the reported maximum frequency is 1.80 GHz (it should be 3.40Ghz as it reported before):

guido@dell-5570:~> sudo cpupower -c all frequency-info        
analisi della CPU 0:
  driver: acpi-cpufreq
  CPU che operano alla stessa frequenza hardware: 0
  CPU che è necessario siano coordinate dal software: 0
  latenza massima durante la transizione: 10.0 us
  limiti hardware: 400 MHz - 1.80 GHz
  available frequency steps:  1.80 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz, 700 MHz, 600 MHz, 500 MHz, 400 MHz
  gestori disponibili: ondemand performance schedutil
  gestore attuale: la frequenza deve mantenersi tra 400 MHz e 1.80 GHz.
                   Il gestore "performance" può decidere quale velocità usare
                  in questo intervallo.
  current CPU frequency: 1.80 GHz (asserted by call to hardware)
  boost state support:
    Supported: yes
    Active: yes
analisi della CPU 1:
  driver: acpi-cpufreq
  CPU che operano alla stessa frequenza hardware: 1
  CPU che è necessario siano coordinate dal software: 1
  latenza massima durante la transizione: 10.0 us
  limiti hardware: 400 MHz - 1.80 GHz
  available frequency steps:  1.80 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz, 700 MHz, 600 MHz, 500 MHz, 400 MHz
  gestori disponibili: ondemand performance schedutil
  gestore attuale: la frequenza deve mantenersi tra 400 MHz e 1.80 GHz.
                   Il gestore "performance" può decidere quale velocità usare
                  in questo intervallo.
  current CPU frequency: 1.80 GHz (asserted by call to hardware)
  boost state support:
    Supported: yes
    Active: yes
analisi della CPU 2:
  driver: acpi-cpufreq
  CPU che operano alla stessa frequenza hardware: 2
  CPU che è necessario siano coordinate dal software: 2
  latenza massima durante la transizione: 10.0 us
  limiti hardware: 400 MHz - 1.80 GHz
  available frequency steps:  1.80 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz, 700 MHz, 600 MHz, 500 MHz, 400 MHz
  gestori disponibili: ondemand performance schedutil
  gestore attuale: la frequenza deve mantenersi tra 400 MHz e 1.80 GHz.
                   Il gestore "performance" può decidere quale velocità usare
                  in questo intervallo.
  current CPU frequency: 1.80 GHz (asserted by call to hardware)
  boost state support:
    Supported: yes
    Active: yes
analisi della CPU 3:
  driver: acpi-cpufreq
  CPU che operano alla stessa frequenza hardware: 3
  CPU che è necessario siano coordinate dal software: 3
  latenza massima durante la transizione: 10.0 us
  limiti hardware: 400 MHz - 1.80 GHz
  available frequency steps:  1.80 GHz, 1.80 GHz, 1.70 GHz, 1.60 GHz, 1.50 GHz, 1.40 GHz, 1.30 GHz, 1.20 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz, 700 MHz, 600 MHz, 500 MHz, 400 MHz
  gestori disponibili: ondemand performance schedutil
  gestore attuale: la frequenza deve mantenersi tra 400 MHz e 1.80 GHz.
                   Il gestore "performance" può decidere quale velocità usare
                  in questo intervallo.
  current CPU frequency: 1.80 GHz (asserted by call to hardware)
  boost state support:
    Supported: yes
    Active: yes
guido@dell-5570:~> sudo cpupower monitor -m Mperf             
    | Mperf               
 CPU| C0   | Cx   | Freq   
   0| 99,36|  0,64|  1817
   1| 99,36|  0,64|  1817
   2| 99,36|  0,64|  1817
   3| 99,35|  0,65|  1817

@guido.mazzone:

Do you actually have anything which needs CPU running?

For example, on this machine if nothing much is going on, the CPU Cores all run at 1.40 GHz.

  • If, with VLC I play an old Apple QuickTime movie, one or two of the Cores will occasionally run at either 2.30 GHz or, 3.70 GHz – but not always – the CPU load is dynamically distributed over the available CPU resources …

Yeah, it reachs full power on windows, I don’t know why it doesn’t on linux. I already tried changing many CPU performance parameters from the BIOS, but the situation didn’t change.

Thanks anyway

Yes, I have BOINC running 4 simultaneous tasks, using full power of all 4 cores (each task runs on a core, using its full power), in fact CPU usage is 100%.

Possibly the reason why, a large proportion of the Servers on this planet are running Linux, rather than the Redmond product …

BEWARE: use the following only if you know what you are doing, you can damage your HW with incorrect use.

I found the following article dealing with a similar problem: https://qtibia.com/speed-up-your-qgis-build-times/
The package mentioned, intel-undervolt, is available for Leap 15.2 here
Maybe DELL configured its system (on Win*) to take advantage of the TDP tuning feature of the i5-8250U

DISCLAIMER: I didn’t test the above nor can guarantee that it is fit for use; this is provided only to point to a discussion that may offer some useful insight.

openSUSE is configured to deliver long battery life for laptops.
The decision to use laptop’s CPU at full power during a long period of time is stupid. You are shortening life of your laptop.
If you need power - use desktops or servers instead.

But if you insist:

  1. Uninstall “tlp” packages.

  2. Try to use TW.

Thank you for you response, you made me discover that I can make persistent changes to power configuration settings by editing /etc/default/tlp , I didn’t know of tlp on OpenSUSE and thought the only way to do this way was by setting a script to be executed at every boot. :slight_smile:

Following the first pass of the guide I found CPU temp is above 90 degrees, even if fan is costantly running at the slowest speed. I’m not sure why it happens but I used this PC very much for more than 2 years, it’s still covered by extented warranty so next days I will make DELL clean the fan before doing anything else.

Than you all in the meantime. :slight_smile:

By “BOINC” do you mean (the) “Berkeley Open Infrastructure for Network Computing”?

  • If yes, what are the four tasks your Laptop is running as part of the voluntary grid computing?
  • Could it be that, the tasks being run are causing 100 % CPU usage but, the load isn’t enough to trigger an increase of the CPU clock rate?
  • Is the time required to execute each task on Linux, longer or, shorter, than the time required to execute each of those tasks on the Redmond product?

Yes

  1. World Community Grid: Mapping cancer Markers and MLC@home
  2. I don’t now, maybe simply linux manages high temps differently than windows and prefers to lower cpu freq instead of letting the fan go to max.
  3. The time required on linux to complete a task is almost double of the time reqired on windows, also the points gained in a compting day on linux are ar less than on linux

My pc is still under extended warranty and I suspect cpu fan could be full of dust because I costantly used this PC from May 2018, always running BOINC night and day, so next days I will make DELL clean it. I don’t now if this can be related to this problem, but it’s worth a try.

Given the purpose, it may well be that, you could possibly consider investment in hardware which is capable of the following numbers – or, even better …


 # cpupower -c all frequency-info --hwfreq --human
analyzing CPU 0:
  current CPU frequency: 1.40 GHz (asserted by call to hardware)
analyzing CPU 1:
  current CPU frequency: 1.40 GHz (asserted by call to hardware)
analyzing CPU 2:
  current CPU frequency: 1.40 GHz (asserted by call to hardware)
analyzing CPU 3:
  current CPU frequency: 3.70 GHz (asserted by call to hardware)
analyzing CPU 4:
  current CPU frequency: 1.40 GHz (asserted by call to hardware)
analyzing CPU 5:
  current CPU frequency: 1.40 GHz (asserted by call to hardware)
analyzing CPU 6:
  current CPU frequency: 2.30 GHz (asserted by call to hardware)
analyzing CPU 7:
  current CPU frequency: 1.40 GHz (asserted by call to hardware)
 # 

[HR][/HR]A Laptop is often, nothing more than a toy for frustrated business people …

OK, likely this is what limits your clock frequency. Maybe cleaning improves something, or there might be some ACPI or other setting that can trigger a faster fan speed.
Above 90 C any other tinkering with power or frequency might destroy your laptop, so be very careful :wink:

Windows works better than Linux with laptop’s power configs.
See Phoronix for more info.

It seems that, given a Nvidia GPU, for graphics Windows 10 may well outperform Linux.
But, regardless of an AMD or an Intel platform, Linux performs better the Windows 10 for the cases of MySQL, Python scripts and, PHP scripts …

  • The OP is using the Laptop for numerical analysis as part of an Open Infrastructure – in the past, the “rule of thumb” was, either UNIX® or Linux is better for “number crunching” …

If, the hardware has accumulated dust and dirt then, it may well be that, the Linux Kernel will attempt to protect that hardware …

  • Systems operating in “not very clean” environments – such as deep down in a coal mine – have always suffered performance issues after a period of time and have needed to be taken apart to get rid of the grease and dirt …

Please note that, a modern Laptop assumes that, the environment will be a clean office environment – at least once a day the cleaning staff appear and vacuum at least the floors …