The Apple iPhone 6s and iPhone 6s Plus Reviewby Ryan Smith & Joshua Ho on November 2, 2015 8:00 AM EST
A9's GPU: Imagination PowerVR GT7600
With so much time spent talking about A9 from the perspective of its manufacturing process and its Twister CPU, it’s all too easy to forget that Apple has been working on far more under the hood than just CPU performance. As has been the case for generations now, Apple continues to focus on GPU performance, laying the groundwork for significant performance improvements with every generation.
Going all the way back to the first iPhone and its Samsung-developed SoC, Apple has been a patron of Imagination Technologies and their PowerVR GPUs. This has been a productive relationship for both parties, and for A9 this hasn’t changed. To no surprise then, the GPU in the A9 is another design in Imagination’s PowerVR Rogue family, the GT7600.
Briefly, while Apple continues to not disclose the GPU used in their designs – referring to the A9’s GPU as iOS GPU Family 3 v1 – a look at the iOS Developer Library makes it clear what GPU family is being used. Apple still uses tile-based deferred rendering GPUs (to which only PowerVR fits the description), so the only real questions are which family is in use and how many cores are present.
With A8 and its GX6450, there was a pretty clear smoking gun to identify the GPU family via the inclusion of ASTC support, a feature only available on Series 6XT and newer GPUs. There aren’t any such smoking guns on the A9, but the Metal Feature tables indicate that there are a handful of new low-level features which are indicative of a newer revision of the PowerVR Rogue architecture. Coupled with the fact that Imagination announced PowerVR Series 7 nearly a year ago and Apple has proven to be able to implement a new PowerVR design in under a year, and it’s a safe bet that A9 is using a Series 7 design.
As for the configuration, the A9 die shot quickly answers that one. There are 6 distinct GPU cores on the A9 die, divided up into 3 pairs with a shared texture unit in between them. So it may have taken Apple a generation longer than I initially expected, but with A9 we’re finally looking at a 6 core GPU design for the iPhone.
From a feature and design standpoint then, the GT7600 is not a significant departure from the GPUs in the A8 and A7 SoCs, however it does have some notable improvements along with some optimizations to boost performance across the board. Notably, relative to the GX6450 it features a geometry tessellation co-processor as a base feature, a function that was merely optional on Series6XT and, at least in Apple’s case not used. Unfortunately, looking through Apple’s developer documentation it does not appear that tessellation support has been added for Metal, so assuming for the moment that Apple hasn’t stripped this hardware out, they definitely don’t have API support for it.
Otherwise the bulk of Imagination’s focus has been on small tweaks to improve the Rogue architecture’s overall efficiency. Among these, the Special Function Units can now natively handle FP16 operations, saving power versus the all-FP32 SFUs of Series6XT. SFU operations can now also be co-issued with ALU operations, which improves performance when SFUs are being issued (which in Imagination’s experience, has been more than expected). Finally, the Vertex Data Master (geometry frontend), Compute Data Master (compute frontend), and the Coarse Grain Scheduler have all been updated to improve their throughput, and in the case of the scheduler improving its ability to keep USCs from stalling on tile-interdependencies.
Looking at the broader picture, after initially being surprised that Apple didn’t jump to a 6 core design with A8, with A9 it makes a lot of sense why they’d do it now. GPUs have and continue to be the biggest consumers of memory bandwidth in high-performance SoCs, to the point where Apple has outfit all of their tablet-class SoCs with a wider 128-bit memory bus in order to feed those larger GPUs. Conversely, a 64-bit memory bus with LPDDR3 has always represented a memory bandwidth limit that would bottleneck a more aggressive GPU design. With the move to LPDDR4 however, Apple has doubled their memory bandwidth, and coupled with the larger L3 cache means that they now have the means to effectively feed a larger 6 core GPU.
Overall then, between the 50% increase in the number of GPU cores, Imagination’s architectural efficiency improvements, Apple’s own implementation optimizations, and what I don’t doubt to be at least a decent increase in the clockspeed of the GPU, Apple is promoting that A9 should see an incredible 90% increase in GPU performance relative to A8. And as we’ll see in our performance benchmarks, they are more than capable of delivering on that promise.
|Mobile SoC GPU Comparison|
|PowerVR SGX 543MP3||PowerVR G6430||PowerVR GX6450||PowerVR GT7600|
|Used In||iPhone 5||iPhone 5s||iPhone 6||iPhone 6s|
|# of SIMDs||12||4||4||6|
|MADs per SIMD||4||32||32||32|
GFLOPS @ 300MHz
|28.8 GFLOPS||76.8 GFLOPS||76.8 GFLOPS||115.2 GFLOPS|