Project

General

Profile

Emulator Issues #8011

HW bounding box issues (video driver crash, slowdowns)

Added by Johncw87 over 5 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

Game Name?

Super Mario Galaxy
Paper Mario: The Thousand Year Door

Game ID?

RMGE01
G8ME01

What's the problem? Describe what went wrong in few words.

Super Mario Galaxy: Starting from Dolphin revision 4219, selecting a save file while using OpenGL will crash my video driver.

Paper Mario 2: Starting from revision 4219 for OpenGL, and revision 4555 for Direct3D, effects that use bounding box may cause the game to run slower than it does in revision 4217. This is easily noticeable with the water refraction effect in Chapter 1. Additionally, with OpenGL, attempting to stop emulation by using the close button on the game window while the slowdown is happening will freeze Dolphin.

What did you expect to happen instead?

Super Mario Galaxy: I expected that my video driver would not crash.

Paper Mario 2: I expected the game to run as fast or faster than revision 4217, seeing as the changes in question are supposed to be optimizations.

What steps will reproduce the problem?

Super Mario Galaxy:
1. Use Dolphin 4219 or above.
2. Set it to use OpenGL.
3. Start up the game.
4. At the file selection screen, pick any file (new one is fine).
5. Select "Play This File"
6. Whole screen goes black for a second, Display driver has stopped responding and recovered blah blah blah

Paper Mario:
1. Use Dolphin 4219 or above with OpenGL, or Dolphin 4555 or above with Direct3D
2. Import savegame linked in this report.
3. Start the game and load the save.
4. Go to the pipe on the right and enter it.
5. Game runs slower than it should.

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?

4219
4555
4833

Does using an older version of Dolphin solve your issue? If yes, which
versions of Dolphin used to work?

4217

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

Intel Core i7 3770 @ 3.4 GHz
8 GB Ram
AMD Radeon HD 5770
Windows 7 (x64)

Is there any other relevant information? (e.g. logs, screenshots,
configuration files)

Catalyst driver version: 14.12

Paper Mario savegame + Dolphin config: https://dl.dropboxusercontent.com/u/20789739/HW_bounding_box_report.zip


Related issues

Has duplicate Emulator - Emulator Issues #8001: Resident Evil 4 get slow down in some partsDuplicate

Has duplicate Emulator - Emulator Issues #8004: Skies of Arcadia experiences extreme performance dropsDuplicate

Has duplicate Emulator - Emulator Issues #8027: Getting 8 fps in muramasa from 60 fps since 4.0-4555Duplicate

Has duplicate Emulator - Emulator Issues #8077: Resident Evil 1 & 4 slowdownsDuplicate

Has duplicate Emulator - Emulator Issues #8079: Paper mario the thousand year doorDuplicate

Has duplicate Emulator - Emulator Issues #8151: Paper Mario: The Thousand Year Door Keeps Crashing When Entering Pirate's GrottoDuplicate

History

#1 Updated by JMC4789 over 5 years ago

Unable to reproduce on a GTX 760, Latest NVIDIA drivers.

#2 Updated by JMC4789 over 5 years ago

issue 8027 has been merged into this issue.

#3 Updated by JMC4789 over 5 years ago

  • Status changed from New to Accepted
  • Priority set to Urgent
  • Regression set to Yes
  • Relates to performance set to Yes

Basically: Certain graphics cards (namely, older ones) are having extreme issues with slowdown as of the Hardware Bounding Box merges, even compared to the software implementations being always on.

Quick solution would be to turn on Bounding Box Emulation on a per game, but we obviously don't want to do that if we don't have to.

Second solution: Make a setting somewhere for users to turn it off themselves, even if we never set it in any INI since it's heavily dependent on hardware

Third Solution: Make detection better without breaking things.

#4 Updated by JMC4789 over 5 years ago

issue 8004 has been merged into this issue.

#5 Updated by JMC4789 over 5 years ago

issue 8001 has been merged into this issue.

#6 Updated by rodolfoosvaldobogado over 5 years ago

As is hardware dependdant i will say that Second solution will be the best, at least until we can find a reliable way of detecting problematic hardware.

#7 Updated by JMC4789 over 5 years ago

I agree. I like the second solution as well. I don't think this is an implementation problem as much as a driver/graphics card problem.

#8 Updated by Johncw87 over 5 years ago

I'm all for a configuration setting. Have the option to pick between hardware emulation, software emulation, or turn it off completely.

#9 Updated by shreduhsoreus over 5 years ago

Sorry to dig this up almost a week later(was out of town and couldn't keep up) but whenever solution 2 is implemented I'll be ready to test this out to see if this resolves what I was experiencing in issue 8001.

#10 Updated by DanielKim.7C4 over 5 years ago

This may be a red herring, but I noticed all of the reported issues were running on AMD graphics cards. Has anybody with a nVidia graphics card been able to repro the slowdown?

#11 Updated by shreduhsoreus over 5 years ago

GT 740M here. I didn't create my own issue, just added my experience to issue 8001 but forgot to mention my hardware, sorry about that.

#12 Updated by RichieRoxas1 over 5 years ago

4.0-3657 RE4 works perfect
4.0-3659 RE4 gets slow down since this build.

I don't know if you can fix it, but well, I'm using 4.0-3657 just for RE4.

#13 Updated by shreduhsoreus over 5 years ago

I get it in all builds, but in -3659 through -4217 it's a constant 30-50% emulation speed. Prior to -3659 and in every build -4219 and later it's occasional random short slowdowns similar to microstutter, but not your typical microstutter and I don't get microstutter in any games. I stated all of this in issue 8001 and asked if it's just not fixable for me due to my video card but never got an answer.

#14 Updated by skidau over 5 years ago

It is not fixable due to your video card. In 4.0-3659, Dolphin uses your CPU to create the graphics effect. In 4.0-4217, Dolphin uses your video card. For most people, their video card generates the effect faster than their CPU can.

#15 Updated by ZephyrSurfer over 5 years ago

skidau what about the reported crash here. We should check that out.

Are we OK with an option to allow CPU Bounding Box?

#16 Updated by magumagu9 over 5 years ago

issue 8079 has been merged into this issue.

#17 Updated by JMC4789 over 5 years ago

issue 8077 has been merged into this issue.

#18 Updated by metafalica over 5 years ago

Maybe it's better just to revert this commit?
First dropping dx9 that were fast enough to emulate any game, then x86, now making "old" graphics card users unable to play well with OpenGL above 4217.
I have Radeon HD 5750, my friend has "Radeon HD 5800 series" and emu runs crazy slow above 4217, but 100% speed with our "old graphics card" on 4217.

Those who have "new graphics card" will not even notice any difference between CPU or GPU bounding boxes, when emu run at 100% speed for "old graphics card" users without GPU bounding box stuff.

#19 Updated by rodolfoosvaldobogado over 5 years ago

is not necesary to remove the functionality a simple configuration option top diable it is enought.
JMC4789 I merged the option to the ui on ishiiruka can you look at it if is good for you will make the pull request in master.

#20 Updated by skidau over 5 years ago

rodolfo, for some people, the SW bbox is faster than the HW bbox. For others, the HW bbox is not available. And then for some, the SW bbox is slower than the HW bbox. Having an option confuses things when the emulator should be able to decide which setting is best for the user.

#21 Updated by metafalica over 5 years ago

if it possible to change bbox thing at runtime, maybe emu can do test renderings with HW and CPU bboxes and use the one that was faster.

#22 Updated by JMC4789 over 5 years ago

I'm fine with having an option; but I'm not sure if it'll be okay with the Vertex Loader JIT changes (I think we didn't take into account the software bounding box at all?)

#23 Updated by JMC4789 over 5 years ago

issue 8151 has been merged into this issue.

#24 Updated by Stargazerium over 5 years ago

So I tell my problems here now? o.o

#25 Updated by Buddybenj over 5 years ago

  • Milestone set to Current

#26 Updated by ofunniku over 5 years ago

I would also like to add that Muramasa (RSFE7U) has bbox issues as well.

#27 Updated by flacs about 5 years ago

  • Status changed from Accepted to Fix pending

#28 Updated by degasus about 5 years ago

  • Status changed from Fix pending to Fixed

merged

Also available in: Atom PDF