Linked by Thom Holwerda on Wed 20th Dec 2017 17:36 UTC
Apple

A Reddit post from last week has sparked a discussion regarding iPhone performance as a function of battery age. While we expect battery capacity to decrease as batteries age, we expect processor performance to stay the same. However, users with older iPhones with lower-than-expected Geekbench 4 scores have reported that replacing the battery increases their score (as well as the performance of the phone). What's going on here? How many phones are experiencing decreased Geekbench 4 score?

To answer these questions I've plotted the kernel density of Geekbench 4 single-core scores for the iPhone 6s and the iPhone 7 running different versions of iOS. Scores obtained in low-power mode are not included in the distribution.

Evidence seems to be mounting that Apple is decreasing the clock speed of iPhones with decreased battery capacity to maintain the advertised battery life.

Thread beginning with comment 652283
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[2]: Known issue
by Alfman on Thu 21st Dec 2017 04:33 UTC in reply to "RE: Known issue"
Alfman
Member since:
2011-01-28

I will try to get back to you on whether the charge has any effect on performance, as outlined in my earlier post.


Well guys, here I was taking measurements, but it seems that I've been banned from geekbench for performing too many benchmarks. Apparently the geekbench app internally doesn't let you view your results directly, instead results must be processed by a geekbench server first. Not that I'd care except that they blocked access to my data. This is what pisses me off about not having apps that run locally and forcing us to be dependent on 3rd party servers, they're not dependable. To Geekbench: designing local apps this way is totally lame.


Anyways, the following graph is an incomplete snapshot of what I was able to get, I actually ran the tests down to about 30%, but those results are missing from my benchmark history. I was also going to test on a full charge. Unfortunately without those tests it's inconclusive as is.

https://s9.postimg.org/z74dvkmun/geekbench_battery.png

Note: libreoffice insisted on sorting the battery % in ascending order even though the data was collected in descending order.

I'll try checking if I'm unblocked tomorrow. If anyone else attempts to perform a test, don't attempt to go for as many data points as I did - having this level of detail is useless if you cannot finish!

Edited 2017-12-21 04:46 UTC

Reply Parent Score: 3

RE[3]: Known issue
by Alfman on Thu 21st Dec 2017 16:39 in reply to "RE[2]: Known issue"
Alfman Member since:
2011-01-28

I managed to run more benchmarks. It looks like my phone's performance remains quite stable regardless of the battery's voltage or being plugged in.

https://s9.postimg.org/rnleo419r/battery_performance.png

Can anyone perform the benchmarks on an iphone afflicted by the software slowdown? In particular I'd like to see if plugging in the phone restores the performance versus low battery.

Edited 2017-12-21 16:44 UTC

Reply Parent Score: 3

RE[3]: Known issue
by Tony Swash on Fri 22nd Dec 2017 13:27 in reply to "RE[2]: Known issue"
Tony Swash Member since:
2009-08-22

Things like Geekbench may not produce a useful metric in this situation.

What Apple has done is introduce a throttling system used in very specific and episodic situations where iPhones with older partially worn out batteries encounter peak system utilisation (a relatively rare event) which without the episodic throttling could cause the iPhone to suddenly shut down due to lack of power. Once the peak usage passes the throttling is turned off. Most of the time the throttling isn't implemented because most of the time older iPhones with worn out batteries are not being used at full system capacity. Obviously the more worn out a battery is the more like it is likely to encounter an event that requires throttling but even a very worn out battery is highly unlikely to require permanent throttling.

This episodic throttling will almost always show up in benchmarking exercises as benchmarking software is intended to test the maximum system performance and will thus almost certainly trigger precisely the circumstances which trigger the throttling. The benchmarking software does not replicate normal everyday usage.

Edited 2017-12-22 13:28 UTC

Reply Parent Score: -1

RE[4]: Known issue
by Alfman on Fri 22nd Dec 2017 15:45 in reply to "RE[3]: Known issue"
Alfman Member since:
2011-01-28

Tony Swash,

Things like Geekbench may not produce a useful metric in this situation.

What Apple has done is introduce a throttling system used in very specific and episodic situations where iPhones with older partially worn out batteries encounter peak system utilisation (a relatively rare event) which without the episodic throttling could cause the iPhone to suddenly shut down due to lack of power.


I'm sorry Tony, but if an android vendor used this as an excuse for why users couldn't run the CPU at full speed, then we would rightfully be criticizing them right now. Apple does not get a pass here, this is a fail. I don't buy their excuses in the least and I think they were made up by PR. However even if you want take apple 100% at their word and argue that apple does this to prevent crashes under high load, then this is an implicit engineering fail for the iphones. Normal phones don't crash under high load, if I were an apple customer I would demand to know why their iphones are crashing. Even with old batteries in other phones this is not normal and the iphone should not have a crashing problem even on an old charged battery.

I'm open to evidence that apple is telling the truth about the iphone crashing under load, but I think it's an outright lie to cover up their motive for deliberately slowing down old phones after updates. Especially since they said this:

Last year we released a feature for iPhone 6, iPhone 6s and iPhone SE to smooth out the instantaneous peaks only when needed to prevent the device from unexpectedly shutting down during these conditions. We've now extended that feature to iPhone 7 with iOS 11.2, and plan to add support for other products in the future.


WTF apple!? If the iphone really does have a crashing problem and its power supply margins are too tight to run reliably on old batteries, then what about fixing the damn problem? This response that they'd officially continue to degrade performance of old phones in the future is insulting. That's as close to an official policy of planned obsolescence as you can get.

I'm not an apple customer, but I still recognize that apple is a trendsetter. If users don't collectively send a message for companies to stop it when they are condoning performance loss on older devices, then we will end up encouraging more of this sort of behavior in the future. I don't care if it's apple, microsoft, google, or whoever, please let's just stand up against bad precedents like this, otherwise it might become the new norm.

Edited 2017-12-22 16:02 UTC

Reply Parent Score: 4