After I upgraded to iOS 11 on an iPhone 6, I noticed different forms of performance loss:

  • lag to start some applications,
  • interface buttons which seems like on slow motion,
  • virtual keyboard starting to display the characters I typed after 3 to 4 of them,
  • lag in web browsing (but a part of the problem might come from the network interface in use and the load of the connection and the remote server,
  • etc…

Before switching to iOS 12 (which we can test to check), I would like to take advantage of this upgrade to make a correct performance measure of iOS 11 so as to be later able to compare it with the performance of iOS 12.

I would like to measure a number which is network independant and processor independant so as to be able to compare iOS version performance only. Of course an OS performance can’t be fully characterized by a uniq number. For example one OS might be faster on files manipulation, when the other might be faster in graphical interface rendering. But as unperfect as it is, it is always possible to compute a weighted average of performance along different key functions.

I had a look at some great benchmarks like Geekbench but most of them are focused on giving numbers which characterize the processor performance and not the OS one. For example, Geekbanch doesn't provide the iOS version on which the benchmark was run.

Which benchmark would provide a performance “indicator” to characterize the OS helping to compare iOS 11 and iOS 12 performance. Of course on same physical architecture, within the same networking environnment & with the same OS load?


To my knowledge, no such measure exists.

It is virtually impossible to say anything about the performance of an operating system that is fully independent on the processor and network. It really doesn't make much sense.

You can create benchmarks that measure the performance of "real life things", which includes stuff the operating system does - but you wouldn't be able to compare the OS performance across different processors and network devices.

It would make more sense to create a benchmark that tries to focus on operating system operations - trying to spend as much time in the OS as possible and as little in user code. Then you could compare that benchmark value to the same benchmark value on the same exact device (i.e. same processor, etc.) but with a different OS version.

This would tell you a little bit about the OS performance, but it would be very hard to create something that you gives you 1 abstract number that represents the OS performance in a meaningful way. It would depends very much on heuristics and how you want to weigh the performance of each of the many thousands things the particular OS does for you.

For example if iOS 11 is 20% faster at creating threads compared to iOS 12, but iOS 12 is 20% faster at compressing video - which one is the fastest?

If you never compress video, you might say iOS 11 is the fastest, but others might have a different opinion.

  • Thank you for reminding that you can’t resume a performance measure to a single real number 😊. In the best case you can approach a perfect measure with around a 20 components vector. – daniel Azuelos Feb 15 at 10:59
  • I tried to improve my question so as to clarify: yes it’s a complex matter, but this is still what I’m looking for (and I know it’s possible: I contributed to such a research to benchmark Unix OSes 😊). – daniel Azuelos Feb 15 at 11:03
  • It’s really not. It doesn’t make sense unless you have a specific scenario (workcase) to benchmark, which you haven’t got. In any case, I tried to explain it in layman’s terms, but what you’re looking for is not really a benchmark of the operating system itself, but multiple layers of software that are much larger in size. Especially you want to include stuff like UIKit, Foundation, Metal, etc in the benchmark. Please link your research and I can point out the differences in the approaches. – jksoegaard Feb 15 at 16:23

One way to measure this is to do the same tasks on the phone, video to measure exactly how long it takes, and compare the videos.

Others have already done that with two phones side-by-side. Here are two examples on YouTube:

iOS 11 vs 12 speed test on an iPhone 6

iOS 11 vs 12 speed test on an iPhone 8

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .