I should probably spend time doing more worthwhile things rather than writing this. But it seems that no one does otherwise.
As usual when I deal with this stuff, I will be imprecise and simplify A LOT. But in general what I say is going to be practically correct. It means that the big picture is the one I’m describing, without getting lost in the technical details.
The situation is this: in the last couple of generations of GPU, namely the 7xx and the latest 9xx, Nvidia has won the market. They won with hardware that, at the same price level, can output better performance AND consistently better energy efficiency. So it’s a total win-win scenario, where Nvidia wins over AMD in every case you can measure.
The problem is that it turns out this was achieved by removing certain scheduling hardware from the chips, a process that started with the 7xx class and continued with the 9xx. So, putting in the most simplistic way possible, that there’s less “stuff” on the chip, and because of that the chip requires less power to run. Nvidia found out that they were able to improve the performance by moving that specific logic away from the hardware and dealing with it in “software” instead, meaning the drivers. Stripping down and simplifying the hardware allowed Nvidia to create these energy efficient GPUs, also drastically reducing production costs. That’s how they won.
But this summer the first DirectX 12 benchmarks came out, and they showed not only that ATI performed a lot better compared to Nvidia, but that in a few cases NVidia hardware performed WORSE in DX12 than in DX11. Turns out that DX12 implementations rely much more directly on the hardware scheduling that, guess what, is not physically present in the recent Nvidia hardware.
What this reveals is important for both DX11 and DX12 future games, and the likely scenario is that the current 970s and 980s videocards will age VERY quickly and very poorly. The current excellent performance of these GPUs depends critically on Nvidia writing specific game schedulers in the drivers. It means that critical optimization is done directly by Nvidia engineers at the compiler and driver level. Game programmers have NO ACCESS to this level of source code, so they cannot do anything beside calling Nvidia and hope they care enough to allocate their engineer hours to fix certain issues. Right now the 970s and 980s are showing excellent performance because they have full support directly from those engineers, writing these custom schedulers for every big game coming out. These GPUs are crucially dependent on driver optimization because the driver is doing a job that usually is done at the hardware level, in ATI’s case, but Nvidia stripped down the hardware from the new chips, and so does that job in the drivers. And that’s also why new games are coming out that show very poor performance of the 7xx chips compared to the 9xx ones. Because Nvidia engineers focus more and more on the newer cards and less and less effort goes on optimizing and writing drivers for older hardware. Widening the gap over time.
What happens when Nvidia will release new hardware next year, with proper support in hardware for the DX12 features? That everything changes. Nvidia engineers will be focused on optimization for the newer cards, because Nvidia’s job is to sell you new hardware. And because the current GPUs performance is so dependent on active drivers optimization, more than it ever was because the schedulers are written in software, it means that once Nvidia engineers stop putting all their work on that optimization the performance of the current cards will plummet.
The scenario is that while the 970s and 980s are, by far, the best cards right now in the market, in the next months and years we’ll see the scenario completely rewritten. Current cards are going to perform very badly and upgrades will be mandatory if you want to keep up with newer games. There’s going to be a significant step up in hardware requirements, way steeper than what we’ve seen in the least few years.
Yet it’s also not possible to determine if Nvidia has already lost the market battle. Right now ATI hardware is much better future-proof compared to Nvidia, so ATI is better strategically positioned. But the next year marks a shift in technology, a new beginning, and it’s probable that Nvidia will put back in hardware the schedulers, with proper DX12 support instead of emulation. But it’s a new beginning only for Nvidia and who is ready to buy brand new hardware. For everyone else who sticks with Nvidia’s current generation it will only mean that this hardware will quickly be rendered obsolete.