Hacker News new | ask | show | jobs
by motiejus 884 days ago
You are not alone with both issues. Framework12, i5, NixOS. My milleage is 2.5~3h, but usage is light (vim mainly, often not even a browser).

I spent quite some time trying different things to optimize it, but never got more than realistic 3 hours.

Happy with other aspects though.

3 comments

From an 11th gen I get about 6 to 7 with light usage, two to three with any development. It's largely a thin client at this point. Battery health is at 92%.

I tried upgrading to the ryzen and when it was good it was really good. I was able to keep a user mode libvirt vm running for dev work and mid brightness under 5W power draw. That used slirp networking, adding a bridge or default nat nic takes up about 2w to 3w of it's own power.

But like most windows laptops the suspend mucked things up. Not even power draw while asleep, but when awaking from sleep the power minimum was 10w with it more often at 20w with similar usage. I tried several wifi cards, nvme drives, port configurations etc. Also tried Fedora, Ubuntu and Nixos.

On Linux this carries over to the discussion of tlp vs power profile daemon, and soon tund. I saw much better performance and regularity with tlp, but that seems like it's not the path forward.

The steam deck shows that suspend can be fixed and done well with decent battery life under linux.

I have a Framework 13 12th gen i5 as well, running NixOS, but I definitely get a lot more than 3 hours! I'm usually running some terminals and Firefox.

I definitely had to play with powertop a bit and remove some programs that consumed a lot of battery (for example, the blueman tray applet had to go). I'd recommend setting powerManagement.enable = true and powerManagement.powertop.enable = true, and letting powertop run in the background while on battery for a few hours to identify the worst offenders.

This is my configuration: https://kirarin.hootr.club/git/steinuil/flakes/src/branch/ma...

Your flake is very helpful, thanks! I cargo-culted tlp configuration, will see how it goes.

> and letting powertop run in the background while on battery for a few hours to identify the worst offenders.

How do you do the analysis after running powertop in the background?

Sorry, didn't notice the reply; if you let it running for a few while eventually it'll collect enough samples to show you the power consumption of the processes you have running in the terminal UI. Then you just look at the top ones in the list and see if there's a way to reduce power consumption, or quit using them altogether. I haven't used it enough to figure out how the reports work.
My M2 air will outlast the workday. Obscene battery life. I can’t imagine using a Linux notebook after this level of performance.
As long as you don't use Docker. My last job gave me an M1 Air for container debugging and devops, and it was a comically bad fit for the task. I ended up going back to my cheap x86 Linux host for most of the dirty work, just because it ran cooler.

Now, if someone could find me a native Docker host that lasts all day... then we're in business.

I run all the heavy stuff on a remote dev node. My laptop is just vscode+ssh, tmux in iTerm, a browser, Spotify and slack.
The wave of the future! Half the people in my team did that, I didn't feel right about the EC2 costs. To each their own, I guess.
I mainly dev on my home machine, a 13900k linux desktop. When not at home I utilize tailscale to get remote access. Was just in Vegas for a week and it worked great. I plugged my laptop in once to charge.
Or just get the Framework Chromebook and get the best of both worlds.
I have the chromebook, it's great. So easy to do linux stuff. I do wish the cpu scheduler or something related to chromeos could be improved for heavy cpu use. If I run firefox in the linux env, and I open a bunch of tabs, the fan spins up a good amount. It would be soooo much better if there was a way to tell chromeos to use a max amount of resources temporarily, like opening a web browser with lots of tabs. That's my only real complaint, when I overload the system with work.