Kimmo Paasiala
2015-May-22 17:26 UTC
CPU frequency doesn't drop below 1200MHz (like it used to)
On Fri, May 22, 2015 at 8:19 PM, Ian Smith <smithi at nimnet.asn.au> wrote:> On Fri, 22 May 2015 16:28:49 +0300, Kimmo Paasiala wrote: > > On Fri, May 22, 2015 at 10:42 AM, Ivan Klymenko <fidaj at ukr.net> wrote: >> Fri, 22 May 2015 09:33:15 +0200 >> Nikos Vassiliadis <nvass at gmx.com> ??????????????: >> >>> Hi, >>> >>> I just noticed that my CPU's frequency doesn't support dropping >>> below 1200MHz. It used to be able to go down to 150MHz, if I am >>> not mistaken. I'd like it to go down to 600MHz via powerd, like >>> it used to go. This is a month's old 10-STABLE. >>> >>> > [nik at moby ~]$ sysctl dev.cpu.0.freq_levels >>> > dev.cpu.0.freq_levels: 2400/35000 2300/32872 2200/31127 2100/29417 >>> > 2000/27740 1900/26096 1800/24490 1700/22588 1600/21045 1500/19534 >>> > 1400/18055 1300/16611 1200/15194 >>> >>> This is the CPU: >>> > hw.model: Intel(R) Core(TM) i3-3110M CPU @ 2.40GHz >>> >>> Thanks in advance for any ideas, >>> Nikos >> >> Try changing the options in /boot/device.hints >> hint.acpi_throttle.0.disabled="0" >> hint.p4tcc.0.disabled="0" > > > Thanks, those also fixed powerd(8) for me that stopped working after > > upgrading to stable/10 from releng/10.1. Why are those setting > > suddenly needed now? > > > > -Kimmo > > Looks like the changes to these two hints, now defaulting to 1, > committed to -head some months ago has been merged to stable/10. > > Can you say exactly in what way powerd stopped working then?Powerd(8) complained (excerpt from dmesg -a): Starting powerd. powerd: no cpufreq(4) support -- aborting: No such file or directory /etc/rc: WARNING: failed to start powerd Putting those two settings in loader.conf and rebooting fixed the problem and powerd started working again apparently because cpufreq(4) device was available again. -Kimmo> > Except that the minimum frequency that may be set with powerd's -m > switch will be higher without p4tcc (or acpi_throttle) running, this > change shouldn't hurt powerd; if anything it should be more efficient, > as the lower p4tcc-generated frequencies don't save much if any power. > > If you compare dev.cpu.0.freq_levels, as above, both before and after > booting with the changed hints, you can see the ones due to p4tcc's use > of subfrequencies with factors of 1/8 to 7/8 of some base freq, but the > power use in milliWatts provided for these seems largely ficticious. > > On my Lenovo X200, Core2Duo 2.4GHz, idling on battery at 800MHz (minimum > EST freq) or at 100MHz using p4tcc draws almost exactly the same power, > about 7.6W measured from the battery - but responsiveness as performance > is required is a great deal better using just the base EST freqs; YMMV. > > This generally gets discussed on the freebsd-mobile and freebsd-acpi > lists; not sure if a deeper discussion of issues is warranted here. > > cheers, Ian
Ian Smith
2015-May-23 07:00 UTC
CPU frequency doesn't drop below 1200MHz (like it used to)
On Fri, 22 May 2015 20:26:40 +0300, Kimmo Paasiala wrote: > On Fri, May 22, 2015 at 8:19 PM, Ian Smith <smithi at nimnet.asn.au> wrote: > > On Fri, 22 May 2015 16:28:49 +0300, Kimmo Paasiala wrote: > > > On Fri, May 22, 2015 at 10:42 AM, Ivan Klymenko <fidaj at ukr.net> wrote: [..] > >> Try changing the options in /boot/device.hints > >> hint.acpi_throttle.0.disabled="0" > >> hint.p4tcc.0.disabled="0" > > > > > Thanks, those also fixed powerd(8) for me that stopped working after > > > upgrading to stable/10 from releng/10.1. Why are those setting > > > suddenly needed now? > > > > > > -Kimmo [..] > > Can you say exactly in what way powerd stopped working then? > > Powerd(8) complained (excerpt from dmesg -a): > > Starting powerd. > powerd: no cpufreq(4) support -- aborting: No such file or directory > /etc/rc: WARNING: failed to start powerd > > Putting those two settings in loader.conf and rebooting fixed the > problem and powerd started working again apparently because cpufreq(4) > device was available again. Ok, if anabling acpi_throttle and/or p4tcc made cpufreq - and thus powerd - work for you, then it seems likely that you do not have EST enabled in your BIOS. Or at least, we've seen another instance where that was the case, which was fixed by enabling EST (or however your particular BIOS refers to it .. AMD for example use different terms). What CPU is this? In what machine? If EST (ono) IS enabled in your BIOS, this needs further investigation. As is, powerd may be running, but it's doing so highly inefficiently; refer to Stefan, Adrian and Kevin's responses for details. cheers, Ian