The only place you probably won't see a quick uptake is with mobile GPUs, since they essentially never receive updates.
The only place you probably won't see a quick uptake is with mobile GPUs, since they essentially never receive updates.
[1] https://en.wikipedia.org/wiki/PowerVR#Series_6_.28Rogue.29
If mobile GPUs as a class almost never receive updates, this will slow adoption of a new low-level way of using them, regardless of a few scattered exceptions to the "Mobile GPUs never receive updates" rule. :)
As I understand it (and I may not understand it well, as I don't do this for a living), SoC vendors are primarily in the business of selling hardware, rather than software. Everything that follows is second-hand information.
Often, folks who want an SDK for that SoC get the hardware, a bunch of blobs to run the hardware, and a particular version of an OS to run the blobs and any ancillary software. Given that the vendor is a hardware manufacturer, you're not infrequently forever stuck with whatever blobs and version of the OS you were handed. (Unless -of course- you can do the dev work on the OS or blobs yourself.) This lack of focus by the vendor on the software side of things implies that -say- interesting new graphics APIs are only available on the newest hardware. Even if the SoC vendor does do the work to port said API to their older hardware, the folks who used that hardware may not want or be able to verify their software with the new stuff from the vendor.
I don't see how it addresses any of my concerns, especially in light of the following things:
* Most Android phones are no longer officially maintained after three years. Many are abandoned much earlier.
* In order to get a GPU manufacturer to design and build a new driver, they must have some incentive to do so. For the not-leading-edge parts that I call out in my comment (and that make up the vast bulk of the SoCs in the field today), how do you create incentive for the GPU vendor to spend the time on these older parts? Money? Contracts?
Perhaps I'm missing something in your analysis, though.
As an unrelated aside, you sort of seem to be indirectly addressing statements that I never made. Maybe I'm wrong here, but it kind of looks like you're speaking to a larger point that goes something like "Vulkan on SoCs will fail because noone will ever update their drivers."
So, here's how I engage in discussion:
I talk to and with people in order to exchange information. I try to be direct, to the point, and say exactly what I mean. Because I am long-winded, I am not always sufficiently terse. Because I am sometimes a mental spaz, I am not always able to put the right words in the right order to convey the right information. However, one thing I avoid like the plague is innuendo or other unspoken implication (except when used for obvious comedic effect). Having to decode hidden meaning in everyday conversation is tiring and tiresome; I've no desire to waste the time and energy of my conversation partners on such things.
When I make an accusation, or outline a scenario, the most literal interpretation of my words is the correct one. I don't have hidden agendas, and I welcome clarifying questions. Anything that I leave unsaid in my prose is a thing that I have forgotten or simply doesn't pertain to the current conversation. :)