On all of the Linux laptops Iāve owned, getting 5 hours of battery life was considered good. Forget about 8-10 hours.
On the flipside getting 10-12 hours is pretty normal on a lot of Windows laptops.
Not a competition. I would prefer using Linux myself. It is just that Windows has undeniably better thermal and power management. (This is not the fault of Linux per se.)
Weāve confirmed that the card itself is entering the low power state, so it sounds like the system itself is entering a higher power state with the card inserted. Weāre seeing if we can replicate this.
I installed tuned/did your steps, in /etc/tuned/power-saver/tuned.conf it showed
# Autosuspend for USB device HDMI Expansion Card [Framework]
/sys/bus/usb/devices/3-4/power/control=auto
Confirmed tuned-adm active shows power-saver, and also tried the power-saver profile.
Unfortunately, Iām still seeing an extra ~1W draw from the HDMI expansion card.
Also, not sure what was happening, but tuned seemed to bork my S3/deep suspend. It would either:
fail to suspend, resuming immediately
fail to resume from suspend (on but stuck on a black screen)
No worries though, uninstalled it and went back to power-profile-daemon as I seem to have good results/battery with that.
As for the cpu frequency capping, tunedās power-saver and powersave profiles didnāt seem to cap the max cpu frequency.
By my tests
unplugged, on battery
using s-tuiās stress option, toā¦stress the cpu
Powertop to measure battery discharge
Uncapped frequency results:
CPU turbos up to ~3.9GHz, ~39W peak draw. Fans loud.
Then shortly after settles down to 2.8GHz, drawing ~24.7W. Fans a little less loud.
With power-profile-daemonās power-saver profile capping frequency at 1.6GHz (and idk what else it does):
CPU stays at 1.6GHz results in a max of ~14W, with fans barely audible.
@nrp Thanks! I was looking at Fedora logs and saw some errors regarding starting/restarting whichever USB port the HDMI expansion card was being plugged into? Can try to replicate if needed. However, I double and triple checked in Windows 10 and still saw similar deltas, leading me to believe that it isnāt solely a Linux-issue.
Iām using Powertop on Linux and BatteryBar on Windows to track power consumption.
Of course, please let me know if I can provide anything to help.
I tested power-profiles-daemon with power-saver mode and I also donāt see any energy draw from my HDMI card. Iām not sure if it makes any difference but itās in the right slot closest to me (as opposed to one of the rear slots).
Iām getting about the same power draw with power-profiles-daemon as with tuned, (although powertop complains some settings are āBadā) so power-profiles-daemon is probably the way to go. It looks like while browsing this will get about 7 hours consistently which seems pretty good? The lowest idle power usage I recorded on sway/waybar was 4.25 W.
@Michael_Lingelbach no worries! I wanted to try out tuned at some point, anyways
Yeah, I dedicate the front left slot to it but have tried other slots ā same thing. Hmm, just to confirm, if you unplug the HDMI card completely does your lowest idle power remain the same?
From my previous testing, with just a terminal running Powertop: powertop --auto-tune, which turns all tunables to Good, seemed to save around 0.3W during idle vs. the defaults.
Note that each setting can and probably should be tested for stability/side-effects/power savings, and extra steps are needed to persist the settings upon reboot. Iām currently using Powertop just for monitoring and not adjusting tunables to avoid any harmful side-effects, though.
In prior testing, I noticed that power-profile-daemonās power-saver profile idled about 0.5W lower than the balanced profile, with nothing open but a terminal showing Powertop.
7 hours would be 55Wh/7 hours ~= 7.857W on average, which I would say is in line with what Iāve noticed just with normal browsing ā but of course, these are very rough estimates. Edit: in the spirit of not misleading anyone, the better wording would be my own varied/constant browsing, which can also vary wildly between which browser Iām using, the websites I visit, the number of tabs open, the idling time between scrolling/typing/video-watching. I can sit on a few resource-light websites/tabs, just reading, and maybe achieve 10 hours (5.5W average usage).
With that edit being typed, does anyone have any suggestions for cross-platform and/or Linux battery benchmark tools/standardization? MobileMark isnāt available on Linux, would be nice imo if people could see battery run times (perhaps of various tasks) with a detailed breakdown of peoplesā hardware/settings!
Some notes on power-profiles-daemon:
Fedora 34ās current stable version is 0.8.1, which does not support saving the last used profile after reboot. Defaults on boot to the balanced profile. 0.9.0 does support it (currently available on Fedora 35 stable), along with this neat feature:
support for āholdingā a power profile while running a task
or application, making it possible to switch to a performance profile during
a compilation, or to a power-saver profile when low on battery, reverting to
the original profile when done.
@Michael_Wu wrt. battery benchmarking not anything well known. Ars did their battery test by just playing a video on BBC via a browser, for instance.
There is gnome-battery-benchmark as well, which allows you to set custom loops of actions and run them for a certain amount of time and measure your average power consumption. I havenāt used it personally, though.
@Michael_Wu thanks for the HDMI card information. I measured the card power draw when plugged in with no HDMI cable attached, and it is around 0.1W. I suspect if the system power went up by 1W it may be related to powering up the retimer as well, but will need to do some more measurements to see if this is what is causing the higher power draw.
Youtuber Brad Ling found out about this in his recent livestream that the module cards being plugged in draw significant amounts of power without anything actually being connected to them at 2:27:00. Could there be a fix for this in the future?
Iām wondering high power draw from some modules could be one possible symptom of this linked issue. These exact symptoms arenāt described on that page, but I could totally imagine a scenario where if that EMI sticker was shorting the particular wrong pins it could high power draw when some modules are connected.
This is possibly the same issue Michael Wu is reporting earlier in this thread where the HDMI Expansion Card was keeping the retimer active, which we are investigating.
Anecdotally I noticed some substantial power savings swapping out my HDMI and USB-A for usb-c cards as well, on the order of 700 mW idle. Not I did not notice this in powertop, only by removing the card.
Ditto to @Michael_Lingelbach 's experience, my HDMI card shows ~900mW draw and for some reason 100% usage on powertop. Possibly interestingly, before plugging in to an external monitor for the first time, the HDMI card if it drew any power was <200 micro-Watts (low enough it did not show in the top ~60 entries in powertop).
Perhaps to someone better versed in the technical details this is a clue to some sort of toggle that may have been tripped during the first HDMI usage that can maybe be un-tripped afterward to save a few joules here and there? Whatever the initial configuration was, it worked fine for recognizing the outputting to the external monitor on first use.
It seems that the retimer on the mainboard is not re-entering the low power state that it should be when nothing is plugged in. Weāre digging into why that is.
By the way, as others have reported, with a combination of, in my case, auto-cpufreq and tlp (and not having the HDMI card installed), I was able to get down to 5-6W idle, 7-8W doing light web browsing and so forth.
As an experiment I disabled hyperthreading (and while I was at it, side-channel attack mitigations), and it got down to a little over 4W while idle. Since I donāt need the extra horsepower, this is seeming like a good tradeoff for me, so Iāll keep running it and see how it looks.
Of course, in a perfect world Iād undervolt, butā¦ thanks Intel!
Iām seeing 9.9 while viewing this page in Chrome and screen at 1/2 brightness. I donāt have the display cards in. I do have two of the USB-C, one USB-A and one 250gb installed.
What happens if you turn screen brightness down? The backlight is a huge power draw and when Iām assessing my battery tuning, Iām running with the screen at usually the second or third lowest setting.