Battery Life?

@Brett_Kosinski I’m using Wayland.

Huh. Right now I’m posting this in Firefox running with MOZ_ENABLE_WAYLAND=1, brightness fairly low, scaling set to 150%, and drawing a little shy of 4W idling with a couple of tabs open. That’s with two USB-C and two USB-A installed but not in use.

Switching to no scaling I don’t see any difference! Very strange…

This is what I am seeing using 200% scaling, just to get that out of the way. In Gnome on Ubuntu 21.04.

@Seth_Marinello I don’t see LCD display as one of the items on your list. Maybe let powertop run for a while so it accumulates enough measurements first?

I decided to do a much more thorough dive, available here:

For those that are comparing energy consumption numbers, I encourage a read, as it seems different RAM/memory configurations, and of course different browsers, lead to different numbers.


@Michael_Lingelbach The YouTube 1080P playback was on Microsoft Edge, on Windows. Blew me away initially, still does haha – see above for more data


power I believe uses the powersave governor, which will limit max all cores sustained cpu frequency to ~1600MHz from what I’ve seen. This is also what the battery saver profile on Windows does, from what I’ve seen.

Up to the individual on what they value, though, and one can create a toggle to switch between governors or install one, or use something like auto-cpufreq, etc.

2 Likes

Fwiw I’ve only had mine running a day. So far it looks like I’m seeing 9W idle and 18W while playing youtube. That translates to about 3 1/2h which is honestly about what I was expecting. This isn’t the first “modular” or “open source” laptop using off the shelf standard components instead of proprietary low power weirdo components and there’s always a tradeoff and in the end that tradeoff always translates to battery.

Every gram of weight or cc of volume used by screws, magnets, sockets, ports, or cable routing clips (which are all awesome here btw!) is a gram or cc that could have been occupied by battery. If you look at teardowns of macbooks they’re basically one big battery glued in with a tiny little motherboard with as few chips as possible and all soldered down.

My pixel only got about 3-4h, my x210 from China only got about 3-4h, and I didn’t really expect this to get more than 3-4h. It’s the price we pay for all the cool toys we can’t have with glued together proprietary components in a Dell or Macbook.

That said, this thread gives me hope that maybe I can stretch that 3-4h to maybe twice that if I get power usage down from 9-18W to 4-9W.

2 Likes

Yeah, that’s suuuper high. Definitely look through the various threads on battery tuning, you can cut that by a half to a third.

2 Likes

Same here, mine is around 15w. Idle is roughly the same.

1 Like

Holy cow. 9W and 15W are massive to me. I’m seeing roughly 3±1W Idle with various browsers and windows open (so long as they’re not doing much work). I would characterize both as pretty abnormal power consumption - are these power values while plugged in or on battery?

2 Likes

I’m not sure what OS your’e running, but I have managed to get my Fedora 34 Framework to 4-9W usage using the power-save profile on the power-profiles-daemon and powertop. On full idle I’ve seen it drop below 4W and under normal usage I see anywhere from 8-12W depending on the apps and workload.

1 Like

So interesting update: Running Debian testing I did a dist-upgrade and moved to Gnome 40, and now, with PSR enabled, on a 5.12.19 kernel… stutters. sob So it looks like there’s some interaction between the Gnome 40 version of Mutter and PSR on Wayland that triggers the issue. Go figure.

@Brett_Kosinski The stuttering with PSR isn’t fixed until kernel 5.14. I’ve tested it successfully over the last few days with no issues.

I wasn’t experiencing the issue with Gnome 3.38 prior to Debian moving to 40, so there’s definitely a bit more to it than just a kernel driver bug (and yes I had previously confirmed PSR was enabled).

Ah well, I’m not downgrading so I’ll have to take another crack at testing 5.14. The last time I tested it, Bluetooth didn’t work…

Right now, Bluetooth works fine, albeit only from a cold boot. So, you have to turn the machine completely off and back on, rather than a reboot. I leave my laptop on perpetually (until a kernel update or something), so it’s not a big deal for me personally. It’s worth it to have working PSR, the power savings are considerable.

Yeah, I’ve never made that work.

So, I did something a lot more drastic: I took the wifi module out of my old Lenovo X1C5 and swapped it into my Framework. :slight_smile: Working wifi, bluetooth, and PSR. And all I had to do was downgrade to a four year old wifi module. I’ll take it!

So I’m idling at about 2.4W with screen brightness at 8%. My current config is this:

OS: Arch Linux
Kernel: 5.14.7
Panel Self Refresh: on (I got stuttering on 5.13, but on 5.14 it runs great)
WM: Sway (Wayland)
Display Scaling: 1.5
Expansion cards: 2 USB-C and 1 USB-A
Wifi/Bluetooth: on
RAM: 2x16GB

That’s with no powertop or TLP or auto-cpufreq or power-profiles-daemon or anything. If I plug in the SD card attachment it goes straight up to almost 4W, so I currently have an empty slot until there’s a firmware update or they open the marketplace so I can buy another USB-C :slight_smile:

So for me the key things have been to be on a recent kernel, have PSR on, and unplug anything that isn’t a passive USB attachment from the laptop. And so far I haven’t heard anyone report numbers better than mid-2s for idle power draw, so I’m skeptical that all the userpsace power saving programs are really doing much.

2 Likes

Powertop/TLP can enable devices to suspend that otherwise would drain extra power, so maybe most of them are working well already.

However, limiting the CPU frequency via e.g. auto-cpufreq or power-profiles-daemon (which operates similarly to Windows’ power plans) could result in better battery life. The powersaver governor could be doing other at load battery optimizations as well, but unsure.

Anecdotally, I see when setting the powersaver governor with power-profiles-daemon, my i7-1165G7 CPU frequency caps at ~1.6GHz, resulting in much lower power use at max CPU load. This reduction in CPU speed could result in a task taking longer to complete, thus using the more battery in the long run.

But from my experience, overall battery life seems better (especially if some rogue tab is eating up the CPU before I notice). In that case, there’s a battery savings between the CPU loaded at 1.6GHz vs 2.8GHz.

There’s also a balanced and performance mode, which should be familiar to those coming from Windows.

Anecdotally, I know when I used to disable the boost mode on the CPU (or turbo, if you prefer) in my old 15" Intel Macbook Pro it added a fair amount to the battery life, depending on what I was doing. I also see similar improvement on a newer (6th gen core i5) Thinkpad when I do the same. I am not usually doing compiles or anything similarly on battery, though.
They’re both using older generations of CPU, to be sure, but I expect the big speed boost comes at a significant voltage uptick with the 11th gen parts.
I know in older versions of Windows 10 it was possible to set the maximum CPU speed to some percentage below 100% in the advanced Power Plan settings, though I don’t know if this is still possible with 21H1.
The Framework is out of state with my wife so I can’t mess around with it too much to see if the same applies here.

Still is. If you can’t see it check out my response in a related thread here:

Fair points. I guess by saying that the power management tools weren’t helping I’m really just thinking abut idle power draw. There have been a lot of different ideas thrown around in this thread (fractional scaling being a problem, RAM configuration, TLP settings, and so on), and I tried nearly all of them. And the only ones that made any detectable difference for idle power draw have been PSR, the kernel version, and unplugging the SD card attachment. And until someone reports an idle power draw lower than 2.4W I’m standing by that :slight_smile:

I might try experimenting with auto-cpufreq and more taxing workloads, although for what I’ve been doing (light browsing, a lot of text editing in a terminal, occasional code compilation) I really can’t see a difference. Fixing the above issues was by far the most important factor. TLP and all that didn’t make any difference in terms of getting to lower C states, and as you said I don’t think there’s anything on this laptop that isn’t powering down (besides the obvious problem with some of the usb attachments).

This seems like the biggest advantage to capping CPU frequency. But I’m more of the mind that I want to just try to make sure nothing gets to eat up CPU like that, and in general I want the CPU to “get it’s work done; get back to idle”. I’d prefer not to nerf performance unless there’s a clear benefit.

Anyway, good conversation, and I’ll keep experimenting.

2 Likes