Remix.run Logo
nextos 14 hours ago

One of my favorite machines was the MacBook Air 11 (2012). This was a pure Intel machine, except for a mediocre Broadcom wireless card. With a few udev rules, I squeezed out the same battery performance from Linux I got from OS X, down to a few minutes of advantage in favor of Linux. And all this despite Safari being a marvel of energy efficiency.

The problem with Linux performance on laptops boils down to i) no energy tweaks by default and ii) poor device drivers due to the lack of manufacturer cooperation. If you pick a machine with well supported hardware and you are diligent with some udev rules, which are quite trivial to write thanks to powertop suggestions, performance can be very good.

I am getting a bit more than 10 hours from a cheap ThinkPad E14 Gen7, with a 64 Wh battery, and light coding use. That's less than a MacBook Air, where I would be getting around 13-14 hours, but it's not bad at all. The difference comes mainly from the cheap screen that is more power consuming and ARMs superior efficiency when idling.

But I prefer not to trade the convenience and openness of x86_64 plus NixOS for a bit more battery range. IMHO, the gap is not sufficiently wide to make a big difference in most usage scenarios.

cosmic_cheese 14 hours ago | parent [-]

The need to tweak that deeply just to get “baseline” performance really stings, though, particularly if you’re not already accustomed to having to do that kind of thing.

It’d be a gargantuan project, but there should probably be some kind of centralized, cross-distro repository for power configuration profiles that allows users to rate them with their hardware. Once a profile has been sufficiently user-verified and is well rated, distro installers could then automatically fetch and install the profile as a post-install step, making for a much more seamless and less fiddly experience for users.

ffsm8 13 hours ago | parent | next [-]

Not trying to discredit your idea, but I feel like you're misrepresenting the amount of optimization apple does by calling it baseline.

It's generally the most optimized system down to the fact that Apple controls everything about it's platform.

If that's considered baseline, then nothing but full vertical integration can compete

cosmic_cheese 13 hours ago | parent [-]

For some laptops, this applies in comparison to Windows, too though (see elsewhere in thread for examples).

nextos 12 hours ago | parent | prev [-]

The advantage of Apple is that they deal with a tiny amount of hardware. Vertical integration enables aggressive optimizations.

I agree that in case of Linux, a udev rule generator would be a fantastic step ahead in terms of usability.