Hi!
I'm working on a third-party plugin/driver which renders through either D3D11 or D3D12 in either exclusive fullscreen or windowed mode.
I have performance problems with SwapChain::Present in case of D3D12.
Both for D3D11 and D3D12, I create a swap chain with 2 backbuffers with _DISCARD swapchain effect and call pSwapChain→Present (0, 0) at the end of the frame.
For the sake of the test, I do all rendering in the main thread. Looking at the threads in the task manager reveals the following:
- With D3D11, the thread crawls at maximum speed (~12% on my machine …