Dolphin, the GameCube and Wii emulator - Forums
CPU EFB Access Display Resolution - Printable Version

+- Dolphin, the GameCube and Wii emulator - Forums (https://forums.dolphin-emu.org)
+-- Forum: Dolphin Emulator Discussion and Support (https://forums.dolphin-emu.org/Forum-dolphin-emulator-discussion-and-support)
+--- Forum: Development Discussion (https://forums.dolphin-emu.org/Forum-development-discussion)
+--- Thread: CPU EFB Access Display Resolution (/Thread-cpu-efb-access-display-resolution)



CPU EFB Access Display Resolution - keldor314 - 03-25-2019

So I was playing Super Mario Galaxy and noticed that the EFB related slowdown is very resolution dependent. At 4k, everything is smooth until the sun comes into the frame, and BAM, 10FPS. At 720p, slowdown is minimal.

Is Dolphin sending a full resolution frame buffer back to the CPU side? And if so, is this even meaningful, given that the emulator CPU won't know what do do with it?

I'm wondering if downsampling to native on the GPU side before transfering to the CPU would be a good idea. The CPU does its work, sends the buffer back, and the GPU calculates a delta, using that to overwrite only modified areas to retain detail.


RE: CPU EFB Access Display Resolution - JMC47 - 03-25-2019

Are you using the very latest builds? There's a new optimization for this specific effect that lets me run it a lot faster than in previous builds.


RE: CPU EFB Access Display Resolution - mstreurman - 03-25-2019

(03-25-2019, 06:20 AM)keldor314 Wrote: So I was playing Super Mario Galaxy and noticed that the EFB related slowdown is very resolution dependent.  At 4k, everything is smooth until the sun comes into the frame, and BAM, 10FPS.  At 720p, slowdown is minimal.

Is Dolphin sending a full resolution frame buffer back to the CPU side?  And if so, is this even meaningful, given that the emulator CPU won't know what do do with it?

I'm wondering if downsampling to native on the GPU side before transfering to the CPU would be a good idea.  The CPU does its work, sends the buffer back, and the GPU calculates a delta, using that to overwrite only modified areas to retain detail.

I think that the problem here is that the EFB won't match the resolution and gives you a box at the top left of your screen that is either lower resolution or shows the whole EFB scene at its original size. I remember this being an issue in MKWii in earlier days.


RE: CPU EFB Access Display Resolution - keldor314 - 03-26-2019

(03-25-2019, 05:45 PM)JMC47 Wrote: Are you using the very latest builds?  There's a new optimization for this specific effect that lets me run it a lot faster than in previous builds.

Upon updating to the latest development version, performance is much better.  Have it happy at 1440p.  I'll do some more testing to see if I can get it working at 4k at full speed.

For what it's worth, Dolphin is probably due for a new stable version to be released.  The last one is nearly 3 years old.


RE: CPU EFB Access Display Resolution - keldor314 - 03-26-2019

In fact, turning off ubershaders and I'm getting SMG running solid on 4k. It looks like those optimizations really worked! :-)


RE: CPU EFB Access Display Resolution - themanuel - 03-27-2019

There may still be optimizations that are being worked on because I still see major slowdowns in Skyward Sword with 6x IR and 4x MSAA. Up until recent releases before the VideoCommon updates starting coming, I was able to run that combination full speed but now I can't. Even in the title screen, the emulation struggles and the sound crackles.