Originally Posted by PhantomTaco
By all means correct me if I'm wrong but there's a few things I don't understand. For starters are these theories based on the single Ashes of the Singularity benchmark? IIRC the game was developed with AMD helping the dev out. Would it be crazy to assume there were choices made that specifically improved performance for AMD? I'm not saying they necessarily actively made choices that hampered NVIDIA intentionally or even directly, but if true I'd assume some choices made would specifically benefit AMD while not helping, or potentially hurting NVIDIA hardware. Assuming this is all still based on Ashes alone, that's a single engine. There's at least half a dozen other engines out there that either have dx12 support or have it coming that are not necessarily going to behave the same way, so doesn't it seem a bit too early to draw any conclusions based on a sample size of 1?
You should read this http://www.oxidegames.com/2015/08/16/the-birth-of-a-new-api/
Our code has been reviewed by Nvidia, Microsoft, AMD and Intel. It has passed the very thorough D3D12 validation system provided by Microsoft specifically designed to validate against incorrect usages. All IHVs have had access to our source code for over year, and we can confirm that both Nvidia and AMD compile our very latest changes on a daily basis and have been running our application in their labs for months. Fundamentally, the MSAA path is essentially unchanged in DX11 and DX12. Any statement which says there is a bug in the application should be disregarded as inaccurate information.
Often we get asked about fairness, that is, usually if in regards to treating Nvidia and AMD equally? Are we working closer with one vendor then another? The answer is that we have an open access policy. Our goal is to make our game run as fast as possible on everyone’s machine, regardless of what hardware our players have.
To this end, we have made our source code available to Microsoft, Nvidia, AMD and Intel for over a year. We have received a huge amount of feedback. For example, when Nvidia noticed that a specific shader was taking a particularly long time on their hardware, they offered an optimized shader that made things faster which we integrated into our code.
We only have two requirements for implementing vendor optimizations: We require that it not be a loss for other hardware implementations, and we require that it doesn’t move the engine architecture backward (that is, we are not jeopardizing the future for the present).
There is nvidia code in there. This will likely be one of the most fair benchmarks we will have. When nvidia gets their hands in a dx12 game things might look different. Other times thee IHVs won't have had as much access to the game. This particular benchmark has had everyone involved for a long time. If its not performing as might be desired, its likely because of the graphics card (and maybe driver).