Analysis Concludes Apple Now Using Custom GPU Design

Discussion in 'Mobile Graphics Architectures and IP' started by ltcommander.data, Oct 25, 2016.

Tags:
  1. ltcommander.data

    Regular

    Joined:
    Apr 4, 2010
    Messages:
    614
    Likes Received:
    11
    http://www.realworldtech.com/apple-custom-gpu/

    David Kanter has compared the optimization information provided by PowerVR and Apple and found they are quite different. He concludes that while Apple is still using PowerVR IP for the fixed function hardware, Apple has been using their own custom designed shader cores since the A8. These shader cores are optimized for 16-bit processing with 16-bit register files and data paths. 32-bit data can consume 2 register files and conversion between 16-bit and 32-bit data types is free. Since 16-bit is sufficient for many graphical tasks as well as image processing and neural networks, a 16-bit optimized design should be more power efficient and offer more performance than a 32-bit focused design.
     
    iMacmatician likes this.
  2. dkanter

    Regular

    Joined:
    Jan 19, 2008
    Messages:
    360
    Likes Received:
    20
    Ladies and Gentlemen,

    I have a new article up at RWT!

    Previously, Apple’s iPhones and iPads used PowerVR GPUs from Imagination Technologies for graphics. Based on our analysis, Apple has created a custom GPU that powers the A8, A9, and 10 processors, shipping in the iPhone 6 and later models, and some iPads. Using public documents, we demonstrate that the programmable shader cores inside Apple’s GPU are different from Imagination Technologies’ PowerVR and offer superior 16-bit floating-point performance and data conversion functions. We further believe that Apple has also developed a custom shader compiler and graphics driver. The proprietary design enables Apple to deliver best-in-class performance for graphics, and other tasks that use the GPU, such as image processing and machine learning.

    http://www.realworldtech.com/apple-custom-gpu/

    I look forward to the discussion.

    David
     
  3. Tahir2

    Veteran

    Joined:
    Feb 7, 2002
    Messages:
    2,978
    Likes Received:
    86
    Location:
    Earth
    You have insider stealth knowledge. The internet demands to know your sources! ;)
     
    ImSpartacus likes this.
  4. Lazy8s

    Veteran

    Joined:
    Oct 3, 2002
    Messages:
    3,100
    Likes Received:
    18
    He did a nice job researching some of those details, but his conclusion is flawed. Some of the differences pointed out, like the additional optimizations for 16-bit calculations, are exactly the kind of customizations that Imagination would make for a core customer like Apple.

    The reality is that Apple hasn't cut Imagination out at all. They signed a uniquely comprehensive and elaborate licensing agreement a while back that allowed them to be strategic partners in design.

    Apple obviously needs to have a strong team of GPU engineers on their side to be able work toward the customizations they want at the pace of implementation they've had. And, with the turmoil that's been happening at Imagination and the migration of many of their engineers from the Imgtec side of the project to the Apple side, Apple may some day truly acquire Imagination's GPU and video processor assets in whole. As for now, though, Imagination is still collecting the licensing and royalties from their GPUs that go into iOS products like they always have.
     
    Arwin and roninja like this.
  5. Ailuros

    Ailuros Epsilon plus three
    Legend Subscriber

    Joined:
    Feb 7, 2002
    Messages:
    9,413
    Likes Received:
    174
    Location:
    Chania
    Have there been any tests/benchmarks run between "iOS" & "Android" GPUs based on PowerVR GPU IP, or are we merely reading a pack of suspicions grasped out of thin air?
     
    roninja likes this.
  6. Lodix

    Newcomer

    Joined:
    Sep 8, 2014
    Messages:
    57
    Likes Received:
    3
    You can't compare GPU IP between Android and iOS with benchmarks because they run Metal API on iPhones.
     
  7. Ailuros

    Ailuros Epsilon plus three
    Legend Subscriber

    Joined:
    Feb 7, 2002
    Messages:
    9,413
    Likes Received:
    174
    Location:
    Chania
    i-devices don't run Metal exclusively last time I checked but also OpenGL(_ES) https://gfxbench.com/result.jsp
     
  8. tangey

    Veteran

    Joined:
    Jul 28, 2006
    Messages:
    1,406
    Likes Received:
    149
    Location:
    0x5FF6BC
    Crucially the author of the article can have no idea where the split in design is. Have IMG produced ad-hoc special shaders at Apple's request ? Have Apple done the work in complete isolation from IMG, it is impossible to know unless you are involved.
     
    roninja and BRiT like this.
  9. manux

    Veteran Regular

    Joined:
    Sep 7, 2002
    Messages:
    1,502
    Likes Received:
    355
    Location:
    Earth
    Apple has been hiring a lot of gpu hw engineers based in what I have seen on linkedin past couple of years. Even apple recruiters openly search candidates for gpu development and verification. I'm pretty sure somebody motivated enough could dig significant information from linkedin.
     
    #9 manux, Oct 26, 2016
    Last edited: Oct 26, 2016
  10. 3dilettante

    Legend Alpha

    Joined:
    Sep 15, 2003
    Messages:
    8,061
    Likes Received:
    2,717
    Location:
    Well within 3d
    I think there would be more to the shader cores than the register layout and conversion capabilities if the thread management and instruction issue component count in the shader core category, so perhaps not all of that portion is custom?
    On the fixed-function side, I think there are some patents Apple has made for texturing that might point to customizations outside of the programmable portion.

    Would the implementation for this register file change from the standard Nx32 file to a 2Nx16 file?
    I'm curious if this could be seen if die shots of sufficient clarity were compared between the A8 and higher shader cores and a standard implementation.

    As a licensee of the GPU architecture, does this extend to Apple being able to modify instruction semantics?
    The instruction compiler reference has some selection and broadcast behaviors handled on a per-register basis, so would that still apply if register N is now N and N+1 (FP16) registers, or is there some kind of renaming of the IDs?
    Presumably, that would be where Apple's custom software would fit. Are there other points that make that distinguishable from the compiler using selects and broadcasts to keep 32-bit register halves separate, plus some tweaks to how the values are handled?

    One possible test might be seeing if wavefront occupancy changes for different allocations of 16-bit registers versus 32-bit.

    edit:
    One comment about the implications of Apple's more vertical integration is that from the standpoint of architectural disclosure, Apple can more readily silo its architectural changes and information since it's not trying to sell those to anybody else. That paints a picture of a future that leaves even less to speculate about in threads like these, unfortunately.
     
    #10 3dilettante, Oct 26, 2016
    Last edited: Oct 26, 2016
    milk likes this.
  11. Lazy8s

    Veteran

    Joined:
    Oct 3, 2002
    Messages:
    3,100
    Likes Received:
    18
    I'm not sure how closely David Kanter paid attention to Imagination's announcement of Series 7XT Plus:
    https://imgtec.com/blog/powervr-series7xt-plus-gpus-advanced-graphics-computer-vision/
    ... but I think he's confusing implementation customizations for architectural design direction.

    Now, Apple tends to be very deliberate in their choice of words when it comes to marketing and presentations, and they made a point at the unveiling conference to claim that the graphics part in the A10 was "a new GPU", a subtle nod to the fact that it's been customized beyond the current generation of PowerVR cores available to the general market. And while that doesn't stop it from still being a PowerVR GPU, this does represent a milestone this time versus previous years in terms of aggressiveness in implementation. It's not so unlike when Apple started taking credit for the design on their iPhone/iPad SoCs, naming them with their "A" Series monikers once they stopped using the fairly standard ARM11 generation CPUs and worked with Intrinsity for their customized implementation of a Cortex A8 that could achieve the higher clock rates (like Samsung's Hummingbird).
     
    roninja likes this.
  12. Exophase

    Veteran

    Joined:
    Mar 25, 2010
    Messages:
    2,406
    Likes Received:
    429
    Location:
    Cleveland, OH
    Posted some questions on RWT, didn't get any takers yet (maybe didn't help that it was in response to the wrong person...) - going to try here in case someone wants to address it:

    EDIT: On further reading of IMG's Series 6 instruction set manual, it's apparent that it can perform 16-bit sub-addressing of 32-bit registers through source and destination element selectors. I couldn't find anything indicating SIMD, and in several places Series 6 and onwards are referred to as scalar (including in an explanation for why swizzling is inexpensive).

    There are also pack and unpack instructions that should support converting from FP16 to FP32 and vice-versa. This doesn't mean that such conversions are free, but as I originally contended I don't see anything that suggests they are with Apple either.

    So I'm not seeing any evidence that Apple's doing something differently from IMG.
     
    #12 Exophase, Oct 26, 2016
    Last edited: Oct 26, 2016
  13. manux

    Veteran Regular

    Joined:
    Sep 7, 2002
    Messages:
    1,502
    Likes Received:
    355
    Location:
    Earth
    It would be difficult to not believe apple is doing parts/full gpu themselves based on las few years of openly advertising jobs in linkedin. Here is current snapshot:

    https://www.linkedin.com/jobs/apple-gpu-jobs

    Of course the design cycles are rather long and it will take apple quite some time to take full control of the gpu.
     
  14. willardjuice

    willardjuice super willyjuice
    Moderator Veteran Alpha Subscriber

    Joined:
    May 14, 2005
    Messages:
    1,366
    Likes Received:
    219
    Location:
    NY
    Hey guys just letting you know I merged the two threads together.

    Also while David makes some simplifications, he's right in the general sense that Apple gpus are more custom than the public currently believes. Good to see the information finally getting out!
     
  15. 3dcgi

    Veteran Subscriber

    Joined:
    Feb 7, 2002
    Messages:
    2,431
    Likes Received:
    261
    Apple isn't doing work in complete isolation from IMG as the Apple engineers talk to IMG, but Apple doesn't want their customizations to get provided to other licensees. The best way to do this is to make the changes yourself. Apple has hired enough GPU designers over the last 4-5 years that they are surely doing more than customizing the shader core.
     
  16. Laurent06

    Regular

    Joined:
    Dec 14, 2007
    Messages:
    712
    Likes Received:
    33
    (double post)
     
    TomK likes this.
  17. Laurent06

    Regular

    Joined:
    Dec 14, 2007
    Messages:
    712
    Likes Received:
    33
    What's interesting is that Apple are now recruiting GPU enginers in London. It seems to be a brand new team.
     
  18. Ailuros

    Ailuros Epsilon plus three
    Legend Subscriber

    Joined:
    Feb 7, 2002
    Messages:
    9,413
    Likes Received:
    174
    Location:
    Chania
    Anandtech pointed at the possibility of a custom GPU design from Apple before him, so it's not that with all due respect to David that he "found" something no one else did, or mentioned it "first". If there are any sort of custom cores developed for Apple it didn't just start with the Apple A8, it did two generations before that with the SGX554, which wasn't coincidentially licensed or implemented by any other of IMG's partner and I even recall back then hearing in the background that IMG didn't even have its own drivers developed for it.

    http://www.anandtech.com/show/10685/the-iphone-7-and-iphone-7-plus-review/4

    However between having a big and valuable partner like Apple and at every call from them to jump the only other possible answer for IMG was/is "how high" and calling everything ones gut feeling tells him to as " Apple (mostly) custom cores" is a magnitude of distance. I don't know either what's going on exactly and I won't exclude the possibility of Apple developing a custom GPU core based on IMG GPU IP eventually (if they haven't already), but the lack of real evidence heck even indications for the given case that since A8 they are all custom cores developed by Apple sounds like too sluggish to me.

    From the David's writeup, last paragraph:

    So what would it mean if IMG's foreseeable future GPU IP royalties will not shrink in any justifiable fashion per unit sold?

    Interesting; thank you.
     
    #18 Ailuros, Oct 27, 2016
    Last edited: Oct 27, 2016
  19. sebbbi

    Veteran

    Joined:
    Nov 14, 2007
    Messages:
    2,924
    Likes Received:
    5,288
    Location:
    Helsinki, Finland
    I don't have any insider information about the mobile GPU industry. I am wondering why you believe this is a custom Apple GPU instead of simply PowerVR Series 8? Series 8 was already announced a while ago. Wouldn't it be reasonable to believe Apple is the first to deploy a full sized Series 8 GPU?
     
  20. Ailuros

    Ailuros Epsilon plus three
    Legend Subscriber

    Joined:
    Feb 7, 2002
    Messages:
    9,413
    Likes Received:
    174
    Location:
    Chania
    Problem being that IMG has announced only Series 8XE (which is low end GPU IP) so far: https://imgtec.com/powervr/graphics/series8xe/ There hasn't been any announcement for Series8XT, albeit they have mentioned it in public presentations from what I recall. We don't even have a clue what 8XT would stand for (even in rough lines).

    How come so far no one has bothered to compared A9 to A10 die shots? I might be bad as a layman with die shots, but from what I can tell I haven't seen any major differences for their respective GPU blocks (it's 6 clusters in both cases).
     
Loading...

Share This Page

  • About Us

    Beyond3D has been around for over a decade and prides itself on being the best place on the web for in-depth, technically-driven discussion and analysis of 3D graphics hardware. If you love pixels and transistors, you've come to the right place!

    Beyond3D is proudly published by GPU Tools Ltd.
Loading...