3 ms·
The time estimates make an assumption that you can use a small sample of energy usage and project it linearly over the remaining battery capacity. This assumpt
by zaphoyd 10y ago
The time estimates make an assumption that you can use a small sample of energy usage and project it linearly over the remaining battery capacity.
This assumption breaks down on modern processors that get much of their energy efficiency by non-linear usage techniques such as race to sleep, adjusting cpu clocks for workflow, coalescing interrupts, etc.
Additionally, modern OSes are doing more small random background tasks that are invisible to the user. A machine that is temporarily using a lot of CPU to perform a cloud sync or face detection on some new photos will report that at this level of energy usage you might not have much time left, when in reality the background operation is likely to end shortly and battery life estimates might spike up in 5 minutes.
A user seeing a 3 hour estimate (that is probably wrong per the reasons above) when they are doing nothing that seems energy intensive and concluding that their machine is broken is the problem that Apple is trying to solve here.
Might there be a better way of communicating the energy effect of background tasks on battery to users? Probably, but a single number time remaining is going to be a very hard way to do that (basically asking software to predict the future). The battery life graph over time found in activity monitor is much better.
Something else that would help, and would fit into Apple's MO of moving iOS features to macOS would be a method of allowing users to enter a low power mode that would forgo face detection and spotlight indexing temporarily in favor of more consistent battery life. If it could do this for network usage when I say I am on a slow or metered connection that would be super helpful too.
- KirinDave 10y ago> This assumption breaks down on modern processors that get much of their energy efficiency by non-linear usage techniques such as race to sleep, adjusting cpu clocks for workflow, coalescing interrupts, etc. But uh, my Surface Book's battery indicator is pretty accurate. This is about changing the estimate to bring it in line with the rest of the industry being a PR disaster. Removing it entirely is esoterica.
- tedunangst 10y agoWindows seems to have more hysteresis or longer sampling period on their estimates. I can light the CPU up, and battery won't drop from eight hours to two until it's been that way for a while.
- zaphoyd 10y agoA longer sampling period could certainly be a potential solution. It could also cause a different sort of user confusion. If I start up a game, play for a few minutes and then worry about battery life and go check.. If I still see 8 hours I'm seeing the wrong info and may make a decision to keep playing that I will regret in two hours. I still think something like the battery over time graph is a better solution than a single number with so many assumptions built in that are opaque to the end user. The graph can express "you've not been using a lot of power but whatever you started recently has caused it to drop a lot faster."
- anigbrowl 10y agoThey knew all this before they put it on the market. Why not use some of the hardware development budget - and it's not like Apple has to count pennies - in order to improve upon the existing estimation algorithm? The battery life graph over time found in activity monitor is much better. Obviously it isn't or everyone would be using it. It's more informative from an analytical point of view, but people don't want to do that sort of analysis, that's why they spent $$$$ on a fancy computer. To do simple things for them. Sure, predicting the future is hard. But assessing how different people use their computers, fitting the pattern of a user's activity to an approximate profile, and interacting with them intelligently to discover which features they want always-available vs which ones can slow down a bit needn't be that hard.
- mikeash 10y agoThis assumption is quite accurate if the machine is under a relatively constant workload, which it often is. The time remaining is quite accurate in my experience as long as I keep on doing whatever I'm doing. If I'm programming for hours, I'll get about what it says. If I'm playing a game for hours (well, a while, it doesn't really make it to hours with games) then I'll get what it says. It'll only fail if I look at the estimate after programming for a while and then assume it'll last that long while gaming, or vice versa. But, that's easy to avoid, and that doesn't diminish the usefulness of the estimate in the scenarios where it is valuable. "A user seeing a 3 hour estimate (that is probably wrong per the reasons above) when they are doing nothing that seems energy intensive and concluding that their machine is broken is the problem that Apple is trying to solve here." I'm sure you're right, and this is a typical Apple move recently. Remove a useful feature because the bottom quartile of their users can't handle it. Never mind the rest of us who can.
- JustSomeNobody 10y agoThe problem is people are saying that the new machines are not living up to Apple's estimate (of around 10h) on a charge. Apple's response is to spin this to be about the battery estimate indicator. Basically, they are insulting their more sophisticated users.