FreeBSD on ThinkPad W530

Ian Smith smithi at
Mon Aug 19 12:32:38 UTC 2013

On Wed, 14 Aug 2013 15:40:58 +0200, vermaden wrote:
 > Hi and thanks for reply ;)
 > > Yay another FreeBSD laptop user!
 > I use FreeBSD for dekstop/workstation for I do not remember how long:
 > > Please do this:
 > > * join the freebsd-mobile list;* create PRs for each of your problems with -10 above!;
 > Here are created PRs:
 > stack trace after successfull 'umount /mnt' (SDHC card mounted as msdosfs)
 > 3h of work on battery on FreeBSD while 10h on Windows

Hi; I'm only going to address this one, so chopping mercilessly ..

 > acpi_ibm module is useless on ThinkPad W530
 > x11/xorg does not start if Nvidia Optimus is enabled on
 > > * the power utilisation thing is going to be fun to track down - what kind of
 > > CPU is in there? Is it a recent Intel? I'm playing around with their tools at the
 > > moment; maybe we can look at the power the CPU is consuming and then
 > > add on the power from each of the other parts in your laptop until we
 > > figure out what's drawing said power

Can't fault the comprensiveness of your PR 181282 :)  I did notice:

dev.cpu.0.cx_lowest: C1

As a starting point, try following mav@'s excellent Tuning Power guide:

I don't know what the i7 or your BIOS does about C-states, but using C2 
and especially if you can get to C3 or equivalent could give a big win; 
with other tunings Alexander managed to double battery life (on a C2D)

You said powerd was 'working' but without indication of effectiveness, 
such as what CPU speeds correspond to idle/light load/full load etc?
You may want to try tuning its default modes/idle/busy settings, and 
measure real power used at different freqs.

I suggest trying the advice there to disable p4tcc and acpi_throttle, 
reducing number of P-states considerably.  Then 'service powerd stop', 
run powerd -v in a console and measure power consumption at various 
loads and CPU frequencies.  If you have no wattmeter, acpiconf -i0 may 
serve as a guide (though you do have to wait a while for changes to be 
reflected); for such monitoring (albeit with working acpi_ibm) I use:

smithi on t23% cat ~/bin/t23stat
echo -n "`date` "
sysctl dev.cpu.0.freq dev.cpu.0.cx_usage
sysctl dev.acpi_ibm | egrep 'fan_|thermal'
sysctl hw.acpi.thermal.tz0.temperature
acpiconf -i0 | egrep 'State|Remain|Present|Volt'

smithi on t23% t23stat
Mon Aug 19 22:09:15 EST 2013 dev.cpu.0.freq: 733
dev.cpu.0.cx_usage: 0.05% 99.94% 0.00% last 529us
dev.acpi_ibm.0.fan_speed: 2254
dev.acpi_ibm.0.fan_level: 1
dev.acpi_ibm.0.thermal: 47 46 42 -1 -1 -1 29 -1
hw.acpi.thermal.tz0.temperature: 47.0C
State:                  discharging
Remaining capacity:     95%
Remaining time:         2:36
Present rate:           17313 mW
Present voltage:        12236 mV

Cheers, Ian

More information about the freebsd-questions mailing list