You are not logged in.

#1 2014-08-11 11:31:44

CrazyTux
Member
Registered: 2013-08-23
Posts: 32

[Solved] CPU Frequency scaling

I am trying to make my CPU (intel i5 Haswell) to use powersave on battery and performance on AC. I copied this from the Wiki to /etc/acpi/handler.sh:

ac_adapter)
    case "$2" in
        AC*)
            case "$4" in
                00000000)
                    echo "conservative" | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor  > /dev/null
                    echo -n $minspeed >$setspeed
                ;;
                00000001)
                    echo "performance" | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor > /dev/null
                    echo -n $maxspeed >$setspeed
                ;;
            esac
        ;;
        *) logger "ACPI action undefined: $2" ;;
    esac
;;

And nothing happened. So I tried the command in the root command line, and it gave me this:

tee: /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor: Permission denied
tee: /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor: Permission denied
tee: /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor: Permission denied
tee: /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor: Permission denied

What am I doing wrong? cpupower *can* set the governor, but that doesn't work in /etc/acpi/handler.sh either.

Last edited by CrazyTux (2014-08-11 15:53:22)

Offline

#2 2014-08-11 13:30:25

swordfeng
Member
Registered: 2014-07-24
Posts: 19

Re: [Solved] CPU Frequency scaling

I'm afraid that i5 does not support *conservative* governer, as my i5 laptop can only support *powersave* and *performance*.
Or maybe some kernel modules are missing...

Check `cpupower frequency-info` to see what governers are supported on your computer.
May help this issue.

Last edited by swordfeng (2014-08-11 13:32:50)

Offline

#3 2014-08-11 13:36:38

Xabre
Member
From: Serbia
Registered: 2009-03-19
Posts: 752

Re: [Solved] CPU Frequency scaling

From Sandy Bridge onwards, Intel CPUs use pstate driver for fequency scaling automatically (kernel built in). Cpufreq, therefor, does not work before you disable pstate, which you have no reason to do, imo.
https://wiki.archlinux.org/index.php/CP … ncy_driver

Offline

#4 2014-08-11 14:26:39

CrazyTux
Member
Registered: 2013-08-23
Posts: 32

Re: [Solved] CPU Frequency scaling

That's odd. I have the xfce4-cpufreq-plugin, and it always shows the CPU on powersave, but then performance if I type `cpupower frequency-set -g performance`. It gives the two options powersave and performance, but with no possibility to switch. It also says Scaling driver: intel_pstate

Offline

#5 2014-08-11 14:37:50

Gusar
Member
Registered: 2009-08-25
Posts: 3,605

Re: [Solved] CPU Frequency scaling

intel_pstate has two built-in governors - powersave and performance. There's no reason to use performance really, the difference is minimal, powersave will already clock up the CPU as needed.

acpi_cpufreq has a few more governors - powersave, conservative, ondemand, performance. Conservative should *never* be used, it is completely counterproductive on modern CPUs. Powersave keeps the CPU at it's lowest freq, which is also counterproductive if you actually want to save power. Ondemand is the one to use, it'll clock up the CPU as needed.

intel_pstate powersave and acpi_cpufreq ondemand are roughly equivalent, except intel_pstate is tuned specifically for Intel processors.

Offline

#6 2014-08-11 15:31:50

CrazyTux
Member
Registered: 2013-08-23
Posts: 32

Re: [Solved] CPU Frequency scaling

Ahh. Thanks smile

Offline

Board footer

Powered by FluxBB