Known Full screen issue in DirectX12

Hi everyone, just wanted to say that thanks for being founders.

As we roll out the DirectX 12 build, I wanted to mention that there is a known full screen issue in DirectX12. Basically, if alt-tab it's going to crash. Uh, so maybe bug? I prefer the word issue so as to sound like we aren't doing something wrong ;)

We're working with Microsoft on it and we think we've got a handle on it. Basically, what's going on is that Nitrous and D3D12 are super threaded but Windows processes events more like 1989, because that's when it was written. It ends up being pretty complicated to a do a full-screen transition and thread like this and apparently we're the first ones to ever try it. We hope to get it sorted in a few weeks.

As a result, you might want to run windowed or turn off skype or anything that could pull your window focus out if you run DX12.

Right now the review sites are saying that for Nv, on a slow CPU DX12 is a huge win, on a fast CPU it's marginally slower at average FPS but yielding more consistent framerates (e.g. the 99% test is better). We're expecting DX12 to be super important for SLI on NV, but that supports not in yet.

On AMD, it's a hands down across the board win. High frame rates, very consistent frame times.

Thanks.

2,771 views 4 replies
Reply #3 Top


Hi everyone, just wanted to say that thanks for being founders.

As we roll out the DirectX 12 build, I wanted to mention that there is a known full screen issue in DirectX12. Basically, if alt-tab it's going to crash. Uh, so maybe bug? I prefer the word issue so as to sound like we aren't doing something wrong

We're working with Microsoft on it and we think we've got a handle on it. Basically, what's going on is that Nitrous and D3D12 are super threaded but Windows processes events more like 1989, because that's when it was written. It ends up being pretty complicated to a do a full-screen transition and thread like this and apparently we're the first ones to ever try it. We hope to get it sorted in a few weeks.

As a result, you might want to run windowed or turn off skype or anything that could pull your window focus out if you run DX12.

Right now the review sites are saying that for Nv, on a slow CPU DX12 is a huge win, on a fast CPU it's marginally slower at average FPS but yielding more consistent framerates (e.g. the 99% test is better). We're expecting DX12 to be super important for SLI on NV, but that supports not in yet.

On AMD, it's a hands down across the board win. High frame rates, very consistent frame times.

Thanks.
End of quote

So did NVIDIA screw up with its latest drivers about dx12 or is it because NVIDIA always had better drivers than AMD and thus the gain on dx12 isn't that high ? Or AMD gpu architecture simply makes the différence since afaik it's much more multi threaded oriented than NVIDIA gpus ? Something likely to be fixed from NVIDIA or is it just accepted that NVIDIA current gpus can't perform better with dx12 ? I'm à bit surprises because NVIDIA is usually allocating lots of ressources for drivers coding and support...or would they have under estimated the required stuff to get good performances under dx12 ?

Reply #4 Top

Quoting jetsnguns, reply 3


Quoting ,

Hi everyone, just wanted to say that thanks for being founders.

As we roll out the DirectX 12 build, I wanted to mention that there is a known full screen issue in DirectX12. Basically, if alt-tab it's going to crash. Uh, so maybe bug? I prefer the word issue so as to sound like we aren't doing something wrong

We're working with Microsoft on it and we think we've got a handle on it. Basically, what's going on is that Nitrous and D3D12 are super threaded but Windows processes events more like 1989, because that's when it was written. It ends up being pretty complicated to a do a full-screen transition and thread like this and apparently we're the first ones to ever try it. We hope to get it sorted in a few weeks.

As a result, you might want to run windowed or turn off skype or anything that could pull your window focus out if you run DX12.

Right now the review sites are saying that for Nv, on a slow CPU DX12 is a huge win, on a fast CPU it's marginally slower at average FPS but yielding more consistent framerates (e.g. the 99% test is better). We're expecting DX12 to be super important for SLI on NV, but that supports not in yet.

On AMD, it's a hands down across the board win. High frame rates, very consistent frame times.

Thanks.



So did NVIDIA screw up with its latest drivers about dx12 or is it because NVIDIA always had better drivers than AMD and thus the gain on dx12 isn't that high ? Or AMD gpu architecture simply makes the différence since afaik it's much more multi threaded oriented than NVIDIA gpus ? Something likely to be fixed from NVIDIA or is it just accepted that NVIDIA current gpus can't perform better with dx12 ? I'm à bit surprises because NVIDIA is usually allocating lots of ressources for drivers coding and support...or would they have under estimated the required stuff to get good performances under dx12 ?

End of jetsnguns's quote

DX12's primary advantage over DX11 is CPU overhead. In the cases where you had very efficient D3D11 drivers, on a fast CPU you might not see this come into play directly if you are GPU bound. Some of the performance in D3D11 comes from heavy use of the CPU, but that might not be the best use. For example, one site reported a 30 watt power drop between D3D11 to D3D12. That's a huge increase in efficiency. So for Nvidia's case, you are simply seeing that these GPUs aren't yet fast enough to see a huge difference. That is, the CPU can still generate commands faster then the GPU can consume them even in D3D11.  But rest assured you'll see it in SLI once we get that working or next years GPUS, even on high end CPUs.

I don't think there is anything flawed with Nvidia's D3D12 drivers. In fact, from our experience Nvidia's D3D12 drivers have been a few months ahead relative to AMDs D3D12 driver. That is, we had functional D3D12 drivers from nvidia a few months before we had functional ones from AMD. It doesn't surprise me that D3D11 is a little faster then D3D12 when not CPU bound. I suspect it will always be that way. D3D11's burning alot of CPU to do this though.

D3D12 removes most of the, shall we say, crud in the driver that we really don't want the driver to be doing in the first place. From our perspective, we just want an abstraction over the hardware, not threading or other tracking services which we are perfectly capable of doing ourselves. It wouldn't surprise me if a D3D12 driver is 1/10th the size of a D3D11 driver.

There are many other benefits for D3D12 beyond raw performance. For example, latency can be guaranteed by the application. You should see incredible consistency in our game in D3D12 mode, regardless of vendor.