You are not logged in.
I have an intel DH77EB sandy bridge mobo & core i3 2120 3.3GHz cpu. I know that recently, the driver used to set CPU governors on newer intel cpus changed to intel_pstate. Ever since this happened, I am unable to get the cpu to run at the maximum speed using the "performance" governor. This used to work with the old driver, but now no matter what I do, the clock speed keeps fluctuating around 1.5-2GHz.
/etc/default/cpupower:
# Define CPUs governor
# valid governors: ondemand, performance, powersave, conservative, userspace.
governor='performance'
# Limit frequency range
# Valid suffixes: Hz, kHz (default), MHz, GHz, THz
min_freq="3.29GHz"
max_freq="3.30GHz"
# Specific frequency to be set.
# Requires userspace governor to be available.
# Do not set governor field if you use this one.
#freq=
# Utilizes cores in one processor package/socket first before processes are
# scheduled to other processor packages/sockets.
# See man (1) CPUPOWER-SET for additional details.
#mc_scheduler=
# Utilizes thread siblings of one processor core first before processes are
# scheduled to other cores. See man (1) CPUPOWER-SET for additional details.
#smp_scheduler=
# Sets a register on supported Intel processore which allows software to convey
# its policy for the relative importance of performance versus energy savings to
# the processor. See man (1) CPUPOWER-SET for additional details.
#perf_bias=
# vim:set ts=2 sw=2 ft=sh et:
and output of 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: 1.60 GHz - 3.30 GHz
available cpufreq governors: performance, powersave
current policy: frequency should be within 3.29 GHz and 3.30 GHz.
The governor "performance" may decide which speed to use
within this range.
current CPU frequency is 1.78 GHz (asserted by call to hardware).
boost state support:
Supported: no
Active: no
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
As you can see, it definitely SAYS that frequency should be within 3.29-3.30 GHZ, but it's not.
I initially didn't set min_ and max_freq values (because it was never necessary before), but did this in an attempt to lock the clockspeed, obviously without success.
Any ideas?
Last edited by train_wreck (2013-05-13 19:06:33)
Offline
Are you sure the reported frequency values are correct? From the other Sandy Bridge thread (and Wikipedia) I got the impression that cpupower, conky, etc. will all report wrong frequencies with the pstate driver.
Personally I've reverted to 3.8.11 for the moment until I fully grok pstate and find out how to get pstate info into conky. Right now pstate is a bit too magical and obscure for my taste. Even the Arch Wiki does not seem to help.
Offline
I see. yes, the wiki page mentions nothing about a possible inaccuracy. So maybe it actually IS running at 3.3. I will say that /proc/cpuinfo reports the same values as cpupower.... idk if that makes a difference tho
Offline
unless you really want to work with inetl_pstate, you could just add intel_pstate=disable to your kernel command. Next time you boot acpi_cpufreq should be loaded and you can proceed as usual.
Offline
hey thanks, that works fine for now.
Offline
This other user reports a method for changing pstate.
Offline
yeah i tried that, didn't work.
Offline
Great, now somebody in the know please start a pstate article in the Arch Wiki. Enabling this stuff by default without any documentation can't be the Arch way.
Offline
Hi!
For now you have to manually put that
cpupower frequency-set -g performance
after every reboot (or create script which will be loaded after every reboot).
Offline
Hi!
For now you have to manually put that
cpupower frequency-set -g performance
after every reboot (or create script which will be loaded after every reboot).
yeah, that's how I normally was doing it. But when I started using the intel_pstate driver, that no longer seemed to function properly. As in, "cpupower frequency-info" or /proc/cpuinfo would say that it was running under the "performance" profile, but the clock speed would still be fluctuating around as if it was set on "conservative"or something.
All I was looking to do was just disable the speed-stepping entirely and have the chip run at full speed all the time; this machine is a router/server that's always on and i don't have a reason to have it be fluctuating, also it was kind of screwing with my vpn's crypto performance.
Once again thanks for the info all.
Offline
Have you tried that for checking cpu freq:
# watch cat /sys/devices/system/cpu/cpu{0..3}/cpufreq/cpuinfo_cur_freq
?
Offline
No i had not, is it a different value than /proc/cpuinfo or cpupower?
Offline
Only this works now
Offline
word
Offline
Take a look at this discussion:
https://plus.google.com/117091380454742 … vEekAsG2QT
1. intel_pstate can be disabled at boot-time with intel_pstate=disable or compile it out
2. the old problem with ondemand (and conservative) governors is and was, that they don't know the specific capabilities of the cpu
3. executing some tasks with highest-frequency possible is consuming less power, than taking more time with lower frequency e.g. arithmetic stuff
4. this is not true for all tasks e.g. loading something from main-memory
5. here comes intel_pstate: it knows how the specific cpu works and does it job better than a generic solution, also it seems to handle "boost" better
6. furthermore intel_pstate offers only two governors: powersave and performance
even "powersave" is faster than the generic acpi based approach with "performance" (maybe handles "boost" better)
also "performance" doesn't enforce the default frequency as "lower limit", like the old generic approch, but performance is anyway only ~ 1% faster
You can still select between these two governors with "cpupower frequency-set -g powersave/performance".
Run CPU with fixed frequency
Your good right. You paid for it! There are some good reasons for this:
Requirement of 100% reliable performance and answer-times
Bbenchmarking/Comparsion
Stress-Testing e.g. is CPU never throttled with your provided cooling solution
That is simple, set intel_pstate=disable at boot or remove it from your self compiled kernel. Now you can use the old generic acpi-based generic governors.
Or: Switch Powersave/Boost off in your BIOS/UEFI. This is what I do on desktops.
I will stay with intel_pstate and the default governor "powersave". It seems to do a good job at power-saving and my ThinkPad even runs faster
Maybe it would be less confusing if intel_pstate also overs a "fixed" governor which forces the default-frequencies. But this is merely "intel_pstate=disable".
Offline