lowest C-state changes

Volodymyr Kostyrko c.kworr at gmail.com
Thu Apr 5 10:15:41 UTC 2012


Любомир Григоров wrote:
> Hello all, I am using FreeBSD 9.0-STABLE with Konstantin's patch from March
> 22nd. Everything else is stock. However, after heavy load, or compiling,
> C-states go to C1 as lowest. I think once they pass the threshold, they
> don't go back.
>
> ThinkPad X220
> i5 2520M with integrated Intel video
>
> In /etc/sysctl.conf
> dev.cpu.0.cx_lowest=C3
> dev.cpu.1.cx_lowest=C3
> dev.cpu.2.cx_lowest=C3
> dev.cpu.0.cx_lowest=C3
>
> In /etc/rc.conf
> powerd_enable="YES"
> powerd_flags="-a hiadaptive -b adaptive -i 85 -r 60 -p 100"
>
> However, once the  cores go to C1, they stay there forever, unless I
> manually set them all back.
>
> Any idea on this?
>

Have you checked http://wiki.freebsd.org/TuningPowerConsumption?

1. For CX states to function correctly you better disable throttling and 
powerd. I also witnessed at least one machine that hitting any CX mode 
stops generate interrupts on APIC clock (I had to boot it with a mousee 
until I disabled APIC clocks).

2. You don't need to set each processor CX value, you only need to set:

hw.acpi.cpu.cx_lowest=C3

All cpu's will inherit default profile.

-- 
Sphinx of black quartz judge my vow.


More information about the freebsd-stable mailing list