Dear community,
I am running FreeBSD 12.1-RELEASE-p1 on a X230 Thinkpad. It's great, even suspend/resume works. However, one thing that keeps bothering me is the power consumption. I can't get the battery to last longer than three hours and change:
I'm trying to improve energy efficiency with powerdxx(), but to no avail.
With powerdxx disabled:
With powerdxx enabled:
Enabled, watching powermon():
As you can see, the CPU seems to draw more or less the same power. What could be the reason for this strange behaviour? Moreover, the largest energy consumer is "Uncore" rather than the x86 Cores. Is this regulated by powerdxx() as well? I've read that loading drm-next-kmod in /boot/loader.conf reduces power consumption of the GPU. However, according to the statistics above, the GPU uses the least energy; and I also can't find a package or port of this name in my 12.1-RELEASE installation.
Before you ask, switching from powerdxx() to powerd() doesn't help.
I am running FreeBSD 12.1-RELEASE-p1 on a X230 Thinkpad. It's great, even suspend/resume works. However, one thing that keeps bothering me is the power consumption. I can't get the battery to last longer than three hours and change:
Code:
# acpiconf -i 0
Passwort:
Design capacity: 48840 mWh
Last full capacity: 45090 mWh
Technology: secondary (rechargeable)
Design voltage: 11100 mV
Capacity (warn): 2254 mWh
Capacity (low): 200 mWh
Low/warn granularity: 1 mWh
Warn/full granularity: 1 mWh
Model number: 45N1023
Serial number: 37662
Type: LION
OEM info: SANYO
State: discharging
Remaining capacity: 86%
Remaining time: 2:53
Present rate: 13533 mW
Present voltage: 11567 mV
I'm trying to improve energy efficiency with powerdxx(), but to no avail.
With powerdxx disabled:
Code:
# service powerdxx stop
# powermon
Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz
(Arch: Ivy Bridge, Limit: 28W)
3.65W [========>
]
Package: Uncore: x86 Cores: GPU:
Current: 3.65W Current: 2.50W Current: 1.12W Current: 0.04W
Total: 2195.02J Total: 1476.74J Total: 694.53J Total: 23.75J
With powerdxx enabled:
Code:
# powerdxx -b adp -a adp -n adp -vf
Terminal Output
verbose: yes
foreground: yes
Load Sampling
load samples: 4
polling interval: 500 ms
load average over: 2000 ms
Frequency Limits
battery: [0 MHz, 1000000 MHz]
online: [0 MHz, 1000000 MHz]
unknown: [0 MHz, 1000000 MHz]
CPU Cores
CPU cores: 4
Core Groups
0: [0, 3]
Core Group Frequency Limits
0: [1200 MHz, 2601 MHz]
Load Targets
battery power target: 50 % load
online power target: 50 % load
unknown power target: 50 % load
Temperature Throttling
active: yes
0: [95 C, 105 C]
power: battery, load: 497 MHz, 48 C, cpu.0.freq: 1200 MHz, wanted: 994 MHz
power: battery, load: 398 MHz, 47 C, cpu.0.freq: 1200 MHz, wanted: 796 MHz
power: battery, load: 296 MHz, 49 C, cpu.0.freq: 1200 MHz, wanted: 592 MHz
Enabled, watching powermon():
Code:
Intel(R) Core(TM) i5-3320M CPU @ 2.60GHz
(Arch: Ivy Bridge, Limit: 28W)
5.44W [=============> ]
Package: Uncore: x86 Cores: GPU:
Current: 5.44W Current: 2.65W Current: 2.40W Current: 0.39W
Total: 6845.07J Total: 4469.26J Total: 2261.48J Total: 114.32J
As you can see, the CPU seems to draw more or less the same power. What could be the reason for this strange behaviour? Moreover, the largest energy consumer is "Uncore" rather than the x86 Cores. Is this regulated by powerdxx() as well? I've read that loading drm-next-kmod in /boot/loader.conf reduces power consumption of the GPU. However, according to the statistics above, the GPU uses the least energy; and I also can't find a package or port of this name in my 12.1-RELEASE installation.
Before you ask, switching from powerdxx() to powerd() doesn't help.