System Performance

While synthetic test performance is one thing, and hopefully we’ve covered that well with SPEC, interactive performance in real use-cases behaves differently, and here software can play a major role in terms of the perceived performance.

I will openly admit that our iOS system performance suite looks extremely meager: we are only really left with our web browser tests, as iOS is quite lacking in meaningful alternatives such as to PCMark on the Android side.

Speedometer 2.0 - OS WebView

Speedometer 2.0 is the most up-to-date industry standard JavaScript benchmark which tests the most common and modern JS framework performance.

The A12 sports a massive jump of 31% over the A11, again pointing out that Apple’s advertised performance figures are quite underselling the new chipset.

We’re also seeing a small boost from iOS 12 on the previous generation devices. Here the boost comes not only thanks to an a change in how iOS’s scheduler handles load, but also thanks to further improvements in the ever evolving JS engine that Apple uses.

WebXPRT 3 - OS WebView

WebXPRT 3 is also a browser test, however its workloads are more wide-spread and varied, containing also a lot of processing tests. Here the iPhone XS showcases a smaller 11% advantage over the iPhone X.

Former devices here also see a healthy boost in performance, with the iPhone X ticking up from 134 to 147 points, or 10%. The iPhone 7’s A10 sees a larger boost of 33%, something we’ll get into more detail in a little bit.

iOS12 Scheduler Load Ramp Analyzed

Apple promised a significant performance improvement in iOS12, thanks to the way their new scheduler is accounting for the loads from individual tasks. The operating system’s kernel scheduler tracks execution time of threads, and aggregates this into an utilisation metric which is then used by for example the DVFS mechanism. The algorithm which decides on how this load is accounted over time is generally simple a software decision – and it can be tweaked and engineered to whatever a vendor sees fit.

Because iOS’s kernel is closed source, we’re can’t really see what the changes are, however we can measure their effects. A relatively simple way to do this is to track frequency over time in a workload from idle, to full performance. I did this on a set of iPhones ranging from the 6 to the X (and XS), before and after the iOS12 system update.

Starting off with the iPhone 6 with the A8 chipset, I had some odd results on iOS11 as the scaling behaviour from idle to full performance was quite unusual. I repeated this a few times yet it still came up with the same results. The A8’s CPU’s idled at 400MHz, and remained here for 110ms until it jumped to 600MHz and then again 10ms later went on to the full 1400MHz of the cores.

iOS12 showcased a more step-wise behaviour, scaling up earlier and also reaching full performance after 90ms.

The iPhone 6S had a significantly different scaling behaviour on iOS11, and the A9 chip’s DVFS was insanely slow. Here it took a total of 435ms for the CPU to reach its maximum frequency. With the iOS12 update, this time has been massively slashed down to 80ms, giving a great boost to performance in shorter interactive workloads.

I was quite astonished to see just how slow the scheduler was before – this is currently the very same issue that is handicapping Samsung’s Exynos chipsets and maybe other Android SoCs who don’t optimise their schedulers. While the hardware performance might be there, it just doesn’t manifest itself in short interactive workloads because the scheduler load tracking algorithm is just too slow.

The A10 had similar bad characteristics as the A9, with time to full performance well exceeding 400ms. In iOS12, the iPhone 7 slashes this roughly in half, to around 210ms. It’s odd to see the A10 being more conservative in this regard compared to the A9 – but this might have something to do with the little cores.

In this graph, it’s also notable to see the frequency of the small cores Zephyr cores – they start at 400MHz and peak at 1100MHz. The frequency in the graph goes down back to 758MHz because at this point there was a core switch over to the big cores, which continue their frequency ramp up until maximum performance.

On the Apple A11 – I didn’t see any major changes, and indeed any differences could just be random noise between measuring on the different firmwares. Both in iOS11 and iOS12, the A11 scales to full frequency in about 105ms. Please note the x-axis in this graph is a lot shorter than previous graphs.

Finally on the iPhone XS’s A12 chipset, we can’t measure any pre- and post- update as the phone comes with iOS12 out of the box. Here again we see that it reaches full performance after 108ms, and we see the transition of the tread from the Tempest cores over to the Vortex cores.

Overall, I hope this is the best and clear visual representation of the performance differences that iOS12 brings to older devices.

In terms of the iPhone XS – I haven’t had any issues at all with performance of the phone and it was fast. I have to admit I’m still a daily Android user, and I use my phones with animations completely turned off as I find they get in the way of the speed of a device. There’s no way to completely turn animation off in iOS, and while this is just my subjective personal opinion, I found they are quite hampering the true performance of the phone. In workloads that are not interactive, the iPhone XS just blazed through them without any issue or concern.

The A12 Tempest CPU & NN Performance Tests GPU Performance & Power
Comments Locked

253 Comments

View All Comments

  • zepi - Saturday, October 6, 2018 - link

    Otherwise a nice idea, but Datacenter CPU-market is too little to be interesting for Apple, as crazy as it is.

    Intel makes about $5b/quarter selling Xeons and other Datacenter stuff.

    Apple makes some $50B. I don't think they can waste chip-development resources to design something for such a little "niche".
  • tipoo - Thursday, October 18, 2018 - link


    Well, it would be largely reusing the R&D they already do for iOS chips, making the high performance cores is the hardest part, scaling them up to more cores would be a fraction the work.
  • varase - Tuesday, October 23, 2018 - link

    The Enterprise server business is already a crowded field, and it's not really something Apple has any expertise with.

    In Apple terms, it's not like there's a huge profit potential there, even if they were successful.

    Why put all that effort into learning, when most of their income comes from a portable consumer device they first released in 2007?
  • iwod - Saturday, October 6, 2018 - link

    What are the other die area used for? The labels only has ~half of the die. I could add image signal processing, video encode and decode if that is not included in GPU. Some FPGA we know Apple had included in their SoC. But all that accounted that is likely less than 25% of that due space. What about the other 25%?
  • Glaurung - Sunday, October 7, 2018 - link

    Hardware accelerators for anything and everything that can be hardware accelerated.

    Plus the "secure enclave" is also on there somewhere - a fenced off, cut down SOC within the SOC for handling logins/unlocking and other security stuff.
  • Antony Newman - Sunday, October 7, 2018 - link

    Andrei - This is an awesome review. Do you think Apple could roll out a low end laptop with 6 Vortex cores - or are there still SoC design areas that Apple still needs to address?

    AJ
  • Constructor - Sunday, October 7, 2018 - link

    I'm not Andrei, but my speculation on this would be:

    • It would make no sense to start with the weakest Macs because that would put the transition to Apple's own CPUs in a bad light from the start. As in the Intel transition 12 years ago they would need to start with the middle of their lineup (with iMacs and MacBook Pros) in order to demonstrate the strength of the new CPU platform and to motivate software developers to jump on board, including actually working on the new machines full time if possible.

    • They would need to have an emulation infrastructure for Intel legacy code in place like they did with Rosetta back then (also for Windows/Linux VMs!). And even in emulation that legacy code cannot be much slower than natively on then-current Intel machines, so their own CPUs already need to be a good bit faster than the corresponding Intel ones at the time in order to compensate for most of the emulation cost.

    • As in 2006, this would have a significant impact on macOS so at announcement they would need to push at least developer versions of the new macOS to developers. Back in 2006 they had Intel-based developer systems ready before the actual Intel Macs came out – this time they could actually provide a macOS developer version for the then top-of-the-line iPads until the first ARM-based Macs were available (which already support Blutooth keyboards now and could then just support Bluetooth mice and trackpads as well). But this also means that as back then, they would need to announce the transition at WWDC to explain it all and to get the developers into the boat.

    • Of course Apple would need to build desktop/notebook capable versions of their CPUs with all the necessary infrastructure (PCIe, multiple USB, Thunderbolt) but on the other hand they'd have more power and active cooling to work with, so they could go to more big cores and to higher clock speeds.

    Again: This is sheer speculation, but the signs are accumulating that something this that may indeed be in the cards with Intel stagnating and Apple still plowing ahead.

    I just don't think that it would be practical to put the current level of Apple CPUs into a Mac just like that even though from sheer CPU performance it looks feasible. These transitions have always been a massive undertaking and can't just be shot from the hip, even though the nominal performance seems almost there right now.
  • Constructor - Sunday, October 7, 2018 - link

    Oops – this forum insists on putting italics into separate lines. Oh well.
  • ex2bot - Sunday, October 7, 2018 - link

    Not to mention they’d have to maintain two processor architectures for an extended period. By that, I mean, I doubt they’d transition high-end Macs for a long, long time to avoid angering pros... again.
  • serendip - Monday, October 8, 2018 - link

    A real left field move would be for Apple to release a MacOS tablet running ARM, like a Qualcomm Windows tablet. I wouldn't rule it out considering how Apple went from a single product for the iPhone and iPad to making multiple sizes.

Log in

Don't have an account? Sign up now