I haven't looked at Metal's API. I have programmed PS1/PS2/PSP/PS3 which all used command buffers completely under your own control letting you pre-create them and removing all overhead for "Draw Calls" so I'm excited about these new APIs that seem more like consoles.
There are several demos shown which demonstrate the advantages of getting rid of the draw calls. Not only can you draw a bunch more stuff but you also get much of your CPU back to do other things.
The showed one example doing 400k effective draw calls on some tablet which would be impossible with the older APIs.
I wonder if we're seeing this due to AMD's inability to write good drivers. In certain benchmarks, the performance of cards that cost way less than nVidia's shot up to match theirs. "If the driver is the problem, then no driver is no problem", I guess. It's overall a very welcome development, but I have to wonder what level of incompetence goes on at AMD to get to this point.
That's certainly not a fair assessment. APIs like Metal & Vulkan (and AMD's Mantle which arguably started the trend on the PC) are the correct technical direction to go and not an indication of incompetence on AMD's part - if anything they're an indication of trying to fix a broken status quo. You have to understand that drivers are hard to write because they became an over-complicated mess of hacks and impedance mismatch between what OpenGL/DirectX of old made graphics hardware look like and what graphics hardware actually evolved into. The hardware just evolved away from the APIs.
See here for a start -- this post is extremely enlightening on the situation:
OpenGL is super, super hard to get right. No vendor besides NVIDIA has gotten it right (and often "right" means "follow what NVIDIA does, not what the spec says"). Intel, Qualcomm, ARM/Mali (and Vivante, Broadcom, etc., ...) also all have similarly broken OpenGL implementations.
NVIDIA has sunk millions into their driver, to the point where major games developers only test on NVIDIA, NVIDIA is the reference point, etc., and it's super hard to play catch-up. They have a market share so big that they've convinced you that everybody who isn't NVIDIA is terrible at writing drivers.
All major consoles this generation use AMD-based GPUs, and they seem to work fine.
Note for anyone else sent to the ChromaTouch article instead: Blogspot's JavaScript router is extremely broken. The actual article linked to can be found in the left nav.
This is really impressive, much more work went into the CPU & GPU on this "s" generation than previous years. I can't wait to see what people, smarter than I, do with it.
I mean particle test in linked article. iPhone 6S + Metal vs some top video card + DirectX. Of course later wins, there's no doubt about that, I just wonder how big the margin is.
Simon here - I'm the FlexMonkey in flexmonkey.blogspot. I actually did some side by side comparisons with El Capitan beta a while ago and the performance of my MBP wasn't too dissimilar to my iPad Air 2: http://flexmonkey.blogspot.co.uk/2015/06/cross-platform-meta...
There are some issues with Metal under the latest 10.11 build, when they're fixed, I'll take another look.
I found this Vulkan video from Siggraph exciting
https://www.youtube.com/watch?v=quNsdYfWXfM
There are several demos shown which demonstrate the advantages of getting rid of the draw calls. Not only can you draw a bunch more stuff but you also get much of your CPU back to do other things.
The showed one example doing 400k effective draw calls on some tablet which would be impossible with the older APIs.