Apple's M1 is in a class of its own, unfortunately.
Apple's M1 is in a class of its own, unfortunately.
At least that's my pet theory, running an 4750U with 64GB of RAM installed ;)
But, the largest differences are probably in idle power management, with the phone having much lower power IO channels and better zoned power management to really reduce idle power. A laptop often has the system in a much higher power level with off-chip resources powered up, including WiFi, screen refresh, data buses, and backlight driving a much larger screen area.
Edit to add: I've noticed on laptops with Linux that vastly different battery life from "similar" machines come from differences in how the software and firmware interact to reach different powersaving modes for screen on but idle states, such as with a browser open on a page that has already rendered and awaits user input.
So if your kernel woke up (let’s say after 30 min of suspend to ram) to try and see if it can reclaim physical DIMMs and mark them unused (shrink caches, reorganize pages, etc) you could get quite a big win on standby time. The trick is how to do this without actually hurting battery life (waking up can be expensive and there’s no guarantee you’ll be able to free up DIMMs) and preserving wake from suspend performance (if you’re phone is laggy on wake that’s an experience users will switch away from + you could eat your entire power savings paging back in).
And, I am referring to active idle, not suspend-to-ram scenarios. I think people are talking about screen-on time for battery life, not lid closed and suspended nor lid open but screen disabled. Precious few people are enjoying a laptop that successfully performs a suspend to RAM sleep state while keeping the display alive. Often, the integrated GPU is continuously scanning framebuffers in system RAM and outputting pixel data to the embedded display port even though nothing is changing on screen. Frequently, drivers have disabled LCD panel self refresh modes due to unresolved glitches and artifacts in the graphics stack.
Also really cheap laptops aren't as great about battery life just cuz of reasons. I think there's a lot of selection bias (like people who have a lot of money will buy macbooks in general cuz that's what everyone says to do)
I'm sure a huge component of it is just people-hours spent in figuring out the right balance of defaults that don't just mess people's setups up.
And then there are the hardware bugs which require workarounds in firmware or drivers, and the firmware bugs which require workarounds in drivers, all of which are only developed and tested against Windows.
The set of power management options that Windows 10 exposes to the user has been steadily dwindling to the point that on a new laptop you basically only get to customize how long before the screen shuts off and how long before it goes to sleep. All the more detailed options you had in early Windows 10 or in Windows 7 are no longer exposed, because there's no consistent way to map such controls onto the ever-shifting set of underlying platform features.
That and automatically activating a 'small speaker' EQ for when a device is detected to be portable / be a laptop and have internal speakers would be a massive user experience improvement for laptop Linux users.
TLP isn't magic. More than half of its documented options are inapplicable to current hardware or kernels, and a fair number of the remaining options that could still have an effect are not safe for distros to ship as defaults, usually because they'll trigger firmware or hardware bugs. Installing TLP by default would be far from an actual solution, and isn't even that great a first step toward solving platform power management inadequacies.
Linux is far superior to windows in this regard.
Makes a nice change from five years ago, when I kept breaking my display in order to make CUDA work.
aka Watts
But thinkpads didn't tend to remove batteries to get slimmer then.
It just werks.
The M1 isn't really that notable for "battery life", it isn't. All the people raving are people hitting particular edge cases of high CPU utilization that consumers (even developers) generally don't see when browsing and watching. The Apple power magic is all happening in phones.
And the magic of the M1 is that they have achieved desktop-class (nearly market-leading) performance in a chip that still draws like a phone at idle. It's an amazing piece of engineering, but in a laptop it's really just an incremental improvement over what we already have.
We want companies to excel and give a stiff competition to their peers. Now that we have M1, it's pushing the entire floor to the next level - pushing Intel, AMD and the entire x86 ecosystem.
Curious, why do you think it's unfortunate? Is it because Apple is a large company?
Geekbench 5:
- Single core: A14 1609, SD888 1127
- Multi core: A14 3872, SD888 3731
Antutu:
- A14 615796, SD888 723674
Geekbench 5:
- Single core: 1744
- Multi core: 7676
It is more considerate to Multi Core workload.
The main point is Single Core benchmarks. Which A14 set itself apart to all of its competitors.
Transistor for transistor, ARMs latest licenseable cores are not so much far behind.
But I doubt that shows in light usage like scrolling or opening an app, that's more likely their (lack of) software optimization.
Combine to with legacy of android design going for flexibility, including allowance for inefficient options (especially important in comparing graphics - Several Apple models ran on edge of being able to paint one frame without stutter assuming well-optimized code - Apple spent a lot of time ensuring you didn't see that) and you get certain reputation.
The only thing that I noticed really problematic is graphics intensive software optimized for Qualcomm.
Also, the real issue is not that Samsung doesn't have the capability. A lot of Apple "secret sauce" is that they don't have contractually separated design teams that have to "shop" around for suppliers/buyers, which means that both Qualcomm and Samsung are forced to make more mediocre CPUs because it brings wider selection of buyers - whereas Apple can design device with SoC together, which let's them easily take decisions like "ok, let's put A LOT MORE L1/L2 cache on each core" because they aren't going to deal with customers not wanting to buy them.
P.S. Exynos and Apple A-series have common ancestry