dolphin icon indicating copy to clipboard operation
dolphin copied to clipboard

Metroid Prime Trilogy ini, fix performance, outdated settings.

Open dvessel opened this issue 3 years ago • 7 comments

This reverts #8072 and removes an outdated setting.

Disabling DeferEFBCopies has a big performance cost. Corrupt loading screen it causes is only visible for half a second on initial load. Nothing is affected in game.

https://user-images.githubusercontent.com/126473/195886057-4206753b-2553-40a4-833b-1bcd0492a78b.mp4

These render times are from MP1 on Talon Over World just looking around. Staring at the sky with the rain fall is particularly taxing. MP2 is also stressed when looking at a dark portal. This is through Metal, M1 Mac.

DeferEFBCopies off:

1/3 metal.............11.793ms
Run completed. Sampled 3987 frames.
2/3 metal.............12.093ms
Run completed. Sampled 3987 frames.
3/3 metal.............12.058ms
Run completed. Sampled 3987 frames.
 3987 frames 11.793ms metal pass 1
 3987 frames 12.093ms metal pass 2
 3987 frames 12.058ms metal pass 3
11961 frames 11.981ms complete

DeferEFBCopies on:

1/3 metal..........8.746ms
Run completed. Sampled 3987 frames.
2/3 metal.........7.746ms
Run completed. Sampled 3987 frames.
3/3 metal..........8.713ms
Run completed. Sampled 3987 frames.
 3987 frames 8.746ms metal pass 1
 3987 frames 7.746ms metal pass 2
 3987 frames 8.713ms metal pass 3
11961 frames 8.402ms complete

It’s not worth fixing the small blip on the loading screen.

Enabling XFBToTextureEnable no longer causes a magenta loading screen.

Not from #8072 but ImmediateXFBEnable is outdated. No ill effects on or off.

dvessel avatar Oct 14 '22 16:10 dvessel

another run comparing latest master. same scene but keeping the camera on the sky.

defer off

1/5 metal............22.944ms
Run completed. Sampled 1941 frames.
2/5 metal.............22.790ms
Run completed. Sampled 1941 frames.
3/5 metal.............23.045ms
Run completed. Sampled 1941 frames.
4/5 metal............22.752ms
Run completed. Sampled 1941 frames.
5/5 metal.............24.111ms
Run completed. Sampled 1941 frames.
1941 frames 22.944ms metal pass 1
1941 frames 22.790ms metal pass 2
1941 frames 23.045ms metal pass 3
1941 frames 22.752ms metal pass 4
1941 frames 24.111ms metal pass 5
9705 frames 23.128ms complete

defer on

1/5 metal........13.860ms
Run completed. Sampled 1941 frames.
2/5 metal........13.539ms
Run completed. Sampled 1941 frames.
3/5 metal........13.652ms
Run completed. Sampled 1941 frames.
4/5 metal........12.766ms
Run completed. Sampled 1941 frames.
5/5 metal........13.777ms
Run completed. Sampled 1941 frames.
1941 frames 13.860ms metal pass 1
1941 frames 13.539ms metal pass 2
1941 frames 13.652ms metal pass 3
1941 frames 12.766ms metal pass 4
1941 frames 13.777ms metal pass 5
9705 frames 13.519ms complete

dvessel avatar Oct 14 '22 18:10 dvessel

This can potentially cause other issues. I'd want this heavily tested before we enable a setting that causes any visual error.

JMC47 avatar Oct 14 '22 18:10 JMC47

Yeah, apparently the loading corruption is different on other systems. What I’ve described is specific to MacOS Metal.

dvessel avatar Oct 14 '22 18:10 dvessel

The current settings were chosen for a reason. I will double check on my system, but unless the issues can be rectified some other way, I think this is a no-go. Users who want performance in exchange for potential issues can disable the settings themselves or use primehack.

JMC47 avatar Oct 22 '22 09:10 JMC47

For reference, this is from infirit on discord running Arch on a rx590. Mentions a lot of flickering. Again, this is the intro only. In game is fine. MP3 standalone has no such setting. The forced settings is there only for the intro.

XFB settings can change how it’s corrupted but I have not run into this.

While it’s not fixed without depending on defer EFB, it should be noted in the Wiki about the performance hit.

image

image

dvessel avatar Oct 23 '22 10:10 dvessel

Is this still relevant? I think this can be closed, and regarding the wiki: I'm not opposed to having a bit on the wiki about 'better performance by tweaking xyz at the cost of abc visual degradation' being mentioned.

dreamsyntax avatar Nov 03 '24 06:11 dreamsyntax

This may need to be considered again, since a user on Discord could not run the game at full speed (when going underwater), but could with DeferEFBCopies enabled. https://discord.com/channels/521709831132807179/627990242498183234/1440894462149656708

SuperSamus avatar Nov 21 '25 13:11 SuperSamus