4

I have an I7-8750H and currently have a dual boot machine with Win10 and Ubuntu 18.04 with the 4.18.8 kernel.

When I stress test all cores of the cpu in windows it reaches 3.9 GHz which is as it should, but when i stress test in Ubuntu, the cores only reach 2.5 GHz.

I have tried changing the scaling governor but doesn't change the outcome.

i7z says:

Socket [0] - [physical cores=6, logical cores=12, max online cores ever=6]
TURBO ENABLED on 6 Cores, Hyper Threading ON
Max Frequency without considering Turbo 2307.32 MHz (100.32 x [23])
Max TURBO Multiplier (if Enabled) with 1/2/3/4/5/6 Cores is  41x/41x/40x/40x/39x/39x
Jamidd
  • 41
  • suggest to try (as tests); boot with hardware pstate control disabled, intel_pstate=no_hwp; does stress on only 1 cpu make a difference, i.e. go to near 4.1 GHz?; boot with the acpi-cpufreq driver, intel_pstate=disable; try kernel 4.19-rc5. What is your stress test method? – Doug Smythies Sep 24 '18 at 14:18
  • I am ussing the stress command; With 1 and 2 cores it reaches 4.1 GHz, with 3 4.0 GHz, with 4 3.7GHz, with 5 3.2 GHz, with 6 3 GHz, with 7 2.9 GHz... etc; how can I do the boots you are refering to? – Jamidd Sep 24 '18 at 17:11
  • Oh, you modify /etc/default/grub and change (for example) this line: GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 consoleblank=300" to this GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 consoleblank=300 intel_pstate=disable" and then do sudo update-grub and then reboot. Keep a copy of your original /etc/default/grub first. However, it seems to be working fine. Suggest making your own stress test, so that you know exactly what it is doing. Example: taskset -c 7 yes > /dev/null & repeat for all CPUs. killall yes to terminate them. Then you know it is CPU bound and not IO/disk limited. – Doug Smythies Sep 24 '18 at 21:16
  • I created a infinite loop in c and ran 12 instances at the same time (12 threats at 100%). It ended up that the stress command was IO/disk limited, and the clock speed reached 3.2 GHz, but still not he 3.9 it should. – Jamidd Sep 24 '18 at 22:13
  • tried intel_pstate=no_hwp and intel_pstate=disable, the first didn't make a diference at all, and the seccond usually stayed at 2.9 GHz and sometimes go to 3.2GHz – Jamidd Sep 24 '18 at 22:32
  • An infinite loop in C is also what I do. I print something every N loops, which I can use as a CPU frequency sanity check. I would also take the scheduler out of it by specifically assigning one infinite loop per CPU. OR, make sure you are severely overloaded by running about 18 instances at the same time. I also suggest using turbostat at the same time to make sure you are not processor package power or thermally limited (although your windows test suggests it is not). – Doug Smythies Sep 25 '18 at 00:01
  • Watching the power consumption in turbostat, I believe i know what is happening, the cpu is reaching it's max TDP of 45 W, therefore power limit throttling. Is there a way to change the max TDP so it can reach full turbo speed? – Jamidd Sep 25 '18 at 02:52
  • I do not think TDP can be changed. – Doug Smythies Sep 25 '18 at 03:59
  • In windows it can be changed via XTU. But I guess that is another topic altogether. – Jamidd Sep 25 '18 at 13:14
  • Correction: TDP can not be changed in my older i7-2600K processor, but it might be changeable for yours. Refer to Intel® 64 and IA-32 Architectures Software Developer’s Manual – Doug Smythies Sep 25 '18 at 15:33

1 Answers1

0

For full answer see: Is Turbo Boost Working?

Is Intel Turbo Boost enabled?

Using the terminal you can check if Turbo Boost feature is enabled:

$ cat /sys/devices/system/cpu/intel_pstate/no_turbo
0

This is a double negative; when "no turbo" is off (=0) then Turbo Boost is on.

To disable Turbo Boost use sudo powers and set the switch no_turbo to 1:

$ echo "1" | sudo tee /sys/devices/system/cpu/intel_pstate/no_turbo
1

The returned 1 indicates turbo is now off.


I wrote cpuf to let you change the minimum and maximum frequencies to any within the allowable range:

cpuf-demo.gif

Visit the link to copy the script or get more details.