Project

General

Profile

Emulator Issues #8818

Significant performance regression with Disabled XFB in D3D after 4.0-7088

Added by adiffin502 over 4 years ago.

Status:
Fixed
Priority:
Urgent
Assignee:
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Current
Regression:
Yes
Relates to usability:
No
Relates to performance:
Yes
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

[READ THIS: https://forums.dolphin-emu.org/showthread.php?pid=276132 <<<
Your answers are there!]
[Leave the questions as they are and answer them in the next line]
[Remove lines written inside brackets [], but nothing else]

Game Name?
All games seem to be affected.

Game ID?
See above.

What's the problem? Describe what went wrong in few words.
When XFB is set to Disable, I experience a significant drop in performance, for example:

Super Smash Bros. Melee v1.02 (Main Menu)

4.0-7084 - 170 FPS
4.0-7088 - 42 FPS

A similar problem also happens with both SpongeBob SquarePants: Battle for Bikini Bottom and The SpongeBob SquarePants Movie. For the start screen of BFBB, the game hovers around 40FPS, non-fullspeed. However, in game, the game stays at 30FPS with 100% emulation speed (the same happens in TSSM), when it should be at 60FPS.

Shouldn't we just get rid of Disabled XFB if it:

1) Causes problems in many games e.g. Capcom vs. SNK 2 EO
2) Provides little to no performance improvement over Virtual XFB?

What did you expect to happen instead?
I expected performance with Disabled XFB to be equal to or higher than that of Virtual XFB.

What steps will reproduce the problem?
[Don't assume we have ever played the game and know any level names. Be as
specific as possible.]
(For Disabled XFB issue)
1. Start any game
2. Set XFB to 'Disable'
3. If your PC still runs the game at full-speed, try running the game with Disabled XFB and frame-limiting off, then with Virtual XFB and frame-limiting off. You should see a significant difference in performance.

Dolphin 3.5 and 3.5-367 are old versions of Dolphin that have
known issues and bugs, so don't report issues about them and test the
latest Dolphin version first.
Which versions of Dolphin did you test on?
4.0-7099
4.0-7088
4.0-7084
4.0-7015

Does using an older version of Dolphin solve your issue? If yes, which
versions of Dolphin used to work?
4.0-7084 and older.

What are your PC specifications? (including, but not limited to: Operating
System, CPU and GPU)

Athlon X4 750K @ 4.1GHz
AMD Radeon HD 7770
Windows 8.1 x64

History

#1 Updated by MayImilae over 4 years ago

  • Priority set to Urgent
  • Regression set to Yes
  • Relates to performance set to Yes
  • Milestone set to Current

I find it quite silly that would you suggest to remove disabled XFB just because it got a slowdown... There are a loooot of other factors here!

Nevertheless, this performance regression needs to be investigated pronto!

#2 Updated by MayImilae over 4 years ago

  • Status changed from New to Questionable

Unable to reproduce the described slowdown in melee.

#3 Updated by mimimi over 4 years ago

Ok, i can confirm this in new super mario bros.

4.0-7084: 300 fps without xfb, 280 with virtual xfb
4.0-7088: 62 fps without xfb, 280 with virtual xfb

If virtual xfb wouldn't be a noticable slowdown, and if it wouldn't cause issues, the no xfb option could be removed.

Sorry for not testing the PR

#5 Updated by mimimi over 4 years ago

Ok, it appears to be a d3d only issue:

d3d:
4.0-7084: 300 fps without xfb, 280 with virtual xfb
4.0-7088: 62 fps without xfb, 280 with virtual xfb

ogl:
4.0-7084: 230 fps without xfb
4.0-7088: 225 fps without xfb

#6 Updated by MayImilae over 4 years ago

  • Status changed from Questionable to Accepted

Confirmed the melee slowdown in D3D

#7 Updated by JMC4789 over 4 years ago

Eh, D3D users can just turn on XFB.

#8 Updated by DanielKim.7C4 over 4 years ago

Turning it on fixed my performance regression, though it's hard to say how much performance I got back on a game locked at 30 fps.

If enabling XFB is the intended behavior now, maybe the options default and its help text should be updated to reflect it?

#9 Updated by ClaytondAF over 4 years ago

A thing that I noticed, is when "Auto adjust window size" is checked, the render window becomes really big, stretching beyond the desktop resolution (1920x1080). That with XFB disabled, when enabled that doesn't happen, but I like to change internal res using hotkeys while playing, and the textures become black for a split second while doing it. Also, there IS a noticeable performance hit with XFB enabled in my setup (AMD x2 240 2.8GHz, Geforce 9600GT 1GB). It's a shame when the D3D exclusive fullscreen crash got fixed, this happened instead. Can't use OGL because old card (sigh)...

#10 Updated by MayImilae over 4 years ago

  • Status changed from Accepted to Fix pending

#11 Updated by MayImilae over 4 years ago

And JMC was joking. He is known to do that. :P

#12 Updated by Autoran1 over 4 years ago

  • Status changed from Fix pending to Fixed

Merged

Also available in: Atom PDF