Dolphin, the GameCube and Wii emulator - Forums

Full Version: Is EFB copies to RAM GPU dependant in DX11 and OpenGL?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
masterotaku Wrote:So that's why it's slower at higher resolutions, because it has to read more pixels.

He directly stated that is doesn't:
degasus Wrote:as efb2ram doesn't upscale, we always read back the same amount of data.
(08-30-2013, 04:22 AM)NaturalViolence Wrote: [ -> ]
masterotaku Wrote:So that's why it's slower at higher resolutions, because it has to read more pixels.

He directly stated that is doesn't:
degasus Wrote:as efb2ram doesn't upscale, we always read back the same amount of data.
Oh, sorry, I read that before but I thought he was talking about something different Confused .
(08-28-2013, 09:26 PM)masterotaku Wrote: [ -> ]I'm only worried about this because D3D9 is now deprecated, and I want to know why this doesn't happen in D3D9 and why it does in D3D11 and OpenGL.

If you're worried, you should report this issue.
Was the profiling done at 1xIR, or something higher? Would it help to get the same info for another scale up to see where the workload increases between IR steps? What tool did you use to perform this profiling degasus?
rokclimb15: NSight - https://developer.nvidia.com/nvidia-nsight-visual-studio-edition
It was with 4xIR. Rendering time was less with 1xIR, but the latency was equal. As the latency is much higher then the rendering time, IR does only matters for very cheap GPUs.

> I'm only worried about this because D3D9 is now deprecated, and I want to know why this doesn't happen in D3D9 and why it does in D3D11 and OpenGL.
Our D3D9 backend stream more content (in fact all the constant changes) throw the gpu fifo. This is as strange as it sounds and slows down the rendering (on the GPU), but it reduces the latency on rendering as the latency is usually const in fifo usage.

Both OGL and D3D11 use buffer objects for our constants, so they don't waste fifo space.
Shouldn't D3D11 and OpenGL do that as well? As you said the latency is much higher than the rendering time, then slowing down the rendering and reducing the latency will be faster. What is the drawback of using FIFO space?
D3D11/OGL3 do not support that.
OGL does, but it slow down everything else. Fifo handling is a cpu intensive task. This also requires lots of memory copys which should also slow down everything.
So, how does one reduce high latency in the D3D11 functions without using FIFO?
(09-28-2013, 01:12 AM)neobrain Wrote: [ -> ]D3D11/OGL3 do not support that.

(09-28-2013, 01:34 AM)degasus Wrote: [ -> ]OGL does, but it slow down everything else. Fifo handling is a cpu intensive task. This also requires lots of memory copys which should also slow down everything.

Thanks for the information. But it seems that even everything else is slowed down, it is still a lot faster as far as this thread is concerned (D3D9 4x IR -> 54 FPS, D3D11/OpenGL 4x IR -> 35 FPS).

I don't know if it is the same for every game. If it is, OpenGL should do this as well.
Pages: 1 2