If so what hardware limits performance when using EFB to RAM? GPU, CPU, Ram?
Thread Rating:
Will better hardware increase EFB to Ram performance?
|
* A Faster CPU will always give you better performance.
* A decent GPU is equally important: AMD GCN (R9 270/X or better) or NVIDIA Maxwell (GTX 970 or better, 960 is NOT recommended). NOTE: AMD GPUs perform much better with the D3D backend and are much faster at integer calculations. * The Direct3D backend is *much faster* with EFB to RAM * Adjust your driver / OS / Dolphin settngs properly: GPU Peformance Guide * For even better EFB2RAM performance, use the latest Unstable version of Ishiiruka (with the 'Fast EFB Access' setting enabled) instead of the latest dev. build. * EFB2RAM gets more demanding as the internal resolution increases. Reduce the the IR for better performance. 03-28-2015, 06:21 AM
I was more just curious if EFB to ram was a hardware limitation or not. I don't know what it actually does but based on the naming it sounds like it writes EFB copies to system ram instead of keeping them in the GPU which makes it a longer round trip and probably limited by BUS size instead of actual hardware.
I'm also upgrading my GPU hopefully soon and I was wondering if the better GPU would improve my performance in last story. Thanks you for the helpful suggestions though!
Faster CPU will improve EFB2RAM performance in my experience, but GPU can affect it too.
EFB to RAM generates a texture for the gpu to use, and also copies the object to the gamecube/wii memory. This is required if a game reads this data and does *something* with it, use it for a screenshot feature, know what is on screen(scan visor Metroid Prime 2/3), modify textures(Last Story). Right now it's also required as a fallback for cases that aren't handled otherwise, like partial texture updates in new super mario bros for the spinning coins, the block animation, blue(or red?) coins, the question mark box animation etc. Those partial texture updates could be handled without efb2ram, but this would require some new code.
Anyways, to answer the question, both cpu and gpu are important for efb2ram performance. On this copy from efb to ram, the gpu has to finish rendering, before it can copy from gpu ram to cpu ram. During this the cpu is waiting for the gpu. And then afterwards the gpu is waiting for the cpu to give it new tasks. (fun fact: directly after the efb2ram copy, the cpu is also calculating the hash for the efb copy, so this wait period depends on the texture cache accuracy setting on some games.) So both cpu and gpu are not doing anything for while and have to do all the work in a shorter period of time than usual. This is the reason why efb2ram can cause massive slowdowns, and why a higher IR setting has a much bigger impact than it does on efb2tex. PS: In the thread for the last story, i posted how to patch the dolphin to only do efb2ram when necessary in the game, this results in a good speedup. I don't know if it really works 100%, i only tested loading a game and recoloring clothes with it. 03-28-2015, 07:40 AM
(This post was last modified: 03-28-2015, 07:41 AM by Link_to_the_past.)
Since Last Story was mentioned, after upgrading my video card i got a bit better framerates using 3x ir than before, so yeah efb to ram is affected by a better video card. And like mimimi said better cpu / memory affects it too. You probably won't get much better performance if you gamed at 1x ir though before the upgrade, you will be able to increase the value nevertheless.
03-28-2015, 07:55 AM
(03-28-2015, 07:40 AM)Link_to_the_past Wrote: Since Last Story was mentioned, after upgrading my video card i got a bit better framerates using 3x ir than before, so yeah efb to ram is affected by a better video card. And like mimimi said better cpu / memory affects it too. You probably won't get much better performance if you gamed at 1x ir though before the upgrade, you will be able to increase the value nevertheless. I play about 2.5x IR right now but there are some areas that are unplayable above 1x. |
« Next Oldest | Next Newest »
|
Users browsing this thread: 1 Guest(s)