Question: why do we suddenly need, in 2014, much closer access to hardware? When hardware has been getting faster at a crazy rate and phones have the same 3D power as gaming rigs used to, why did someone decide "we need a few percent more by completely redesigning all the drivers and APIs"?
If this was happening 10 years ago it would make sense to me, but these days we have such an abundance of GPU power and it is increasing faster than you can keep up!
Its largely about the CPU-side, not GPU power.
Single core is dead - GL and D3D are broken by design in this area. Games consoles have allowed us to drive the GPU efficiently from many threads, but no other devices have, thanks to these legacy APIs.
The APIs are heavyweight. How can it make sense that we spend 8ms of CPU time just on *generating commands*, so that the massively powerful GPU can then consume those commands in 16ms... We shouldn't be wasting any time on preparing commands.
The equivalent would be if Windows/Linux were written in Java -- "why should we care, CPUs can handle it" some might say, but IMHO it's crazy to endure 100%+ inefficiency for no reason.
If we can make CPU-side graphics drivers perform 5x faster, why not embrace that? If someone promised to make our physical CPU hardware that muh faster, we'd be all over it.
On ether reason is that OS's used to use software rendering, modern OS's now draw themselves (and all your apps) using the GPU. The day-to-day average workload of GPUs has shot up dramatically, leading to huge changes to they way that commands are submitted to them and how they can be virtualized.
Within games, this generation the GPU isn't going to be the realm of just the graphics programmer either. The GPU has replaced the PS3's SPUs, which ran a lot of physics and AI jobs last gen. Now, we're going to have console gameplay programmers writing compute jobs that interleave with graphics workloads asynchronously (putting graphics on a high latency queue and these gameplay jobs on a different asynchronous queue), so we need APIs on PC that allow is to use the GPU in he same way.