This has everything to do with the unresolved problems of Linux power management. I use Ubuntu on Thinkpads too, and battery life is decent after a bit of configuration. Windows meanwhile gives all day battery life on Thinkpads.
I think the problem is that most distributions ship with no Powertop or udev rules, plus lots of unnecessary services and devices on by default.
One really nice thing Apple does is optimizing Safari for battery life. My comparison was Firefox on macOS vs Linux. With Safari, I'd get 20-30 min more.
I bet Firefox and other programs would benefit from some black-box GCC/LVM flag optimization to improve battery usage.
GPUs could consume a lot of power.
Source:
I used a Windows 10 laptop (not Thinkpad) with Nvidia
GPU and it usually lasted less than two hours on battery.
I work on another laptop, Thinkpad without Nvidia
or AMD GPU, it lasts 6-8 hours on battery. > built-in Nvidia GPU (which
> I use for machine learning)
And I used aforementioned (gaming) laptop with GPU mostly for Deep LearningCurrently I have 11 hours remaining, on 78% battery charge with a fairly dim screen (I use a setting to prevent the battery charging fully to extend its lifetime). Powertop shows a draw of 4.1W. Strangely the computer seems to run hotter in Windows and the battery lifetime is a bit shorter.
I'm using Ubuntu 18.04, running KDE. The laptop (Carbon X1 6th Gen) has a very nice keyboard, red trackpoint, 1TB NVMe SSD, 16GB RAM, i7-8550U CPU and a 2560x1440 display. It also has USB-C plus a couple of USB-A and HDMI sockets.
My MacBook Air at home is 3 years old, but it's thin and light. I take it with me when I travel, and the battery will last through a whole trans-atlantic flight. I don't actually care about the visual design, but the 2016 MacBook Air's keyboard feels very comfortable to type on, and the battery life is awesome.
Unfortunately, when this MacBook Air dies, it will probably get replaced by a PC. I don't really want to shell an insane amount of money on a new Mac, especially in an era where you can't get one without a touchbar, and I won't get the convenience of a non-USB-C port.