Project

General

Profile

Actions

Emulator Issues #7108

closed

Need for Speed Nitro is unstable with dual core/efb>ram

Added by wespipes69 about 10 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
% Done:

0%

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

Description

Game Name?
Need for Speed Nitro

Game ID?
R7XE69

What's the problem? Describe what went wrong in few words.
Game consistently crashes soon into the first lap.

What did you expect to happen instead?
Stability.

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.]

  1. Launch and get in game (2nd race for sure - Eliminator)

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-1246

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

What are your PC specifications? (including, but not limited to: Operating
System, CPU and GPU)
Win 8.1x64, intel i5-2500, nvidia 660

Are you using the 32 or the 64 bit version of Dolphin?
64

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

-Will be stable if:
SC used(very slow)
GPU sync (very slow)
EFB>Texture is used (black cars)

-The following does NOT affect stability:
Idle skipping
Safe texture cache
Vbeam
Several other misc. options

-This seems like a more global issue. Similar stability causes/solutions are observed with Fzero and Mario Kart.

Actions #1

Updated by MayImilae about 10 years ago

Other people have played this game without issue before, so make sure you do some revision testing.

Also, the F-Zero GX dual core issue is very specific, and "Mario Kart" doesn't have any dual core problems that I know of. Calling this a global issue seems like a pretty big leap.

Actions #2

Updated by wespipes69 about 10 years ago

No, not really. Both MK and Fzero are unstable with EFB>Ram just like this one. Either Single Core or EFB> Texture makes all three of these games perfectly stable whereas EFB>Ram + Dual Core makes all of them unstable.

http://code.google.com/p/dolphin-emu/issues/detail?id=6923&can=5 - MK stability issue I logged. And we all know that EFB>Ram/DC causes problems to this day with Fzero.

Actions #3

Updated by JMC4789 about 10 years ago

It's not EFB2Ram + F-Zero GX. Trust me, I play that game all the time, and the dualcore resets happen regardless of EFB2Tex/Ram.

Mario Kart Wii has a problem with EFB2Ram on D3D, has nothing to do with dualcore (to my knowledge;) and OGL works fine there; so I don't think it's an issue related to F-Zero GX.

F-Zero GX has a crash caused by vsync, though, you may wanna make sure all vsyncing is off, then I could say it's related to F-Zero GX in some way.

Either way, I do believe it's crashing, but I do not believe we've found the direct cause yet, leaving as New.

Actions #4

Updated by MayImilae about 10 years ago

Those aren't related. And hundreds of games handle dual core and EFB to Ram without any issue. Calling it a global problem is a leap. But let's drop that, that's not the point of this issue report.

Anyway, you still need to do revision testing. Users have reported this game working fine in 4.0.2.

Actions #5

Updated by wespipes69 about 10 years ago

I get a Dolphin crash (not restarts) with EFB>Ram on Fzero. This happens soon into gameplay.

Launch > Grand Prix > Sapphire cup
Crash almost immediately (first few seconds)
Simply change to EFB>Texture and stable as a rock

I have 60+ games and the others work fine DC+EFB>Ram but Fzero and NFS at least need either EFB>Texture or single core to not crash soon into gameplay.

I think there is a "issue" that affects multiple games - it's the same repro/fix with a similar crash stack.

NFS:
Unhandled Exception
Code: 0xC0000005
Call stack info:
dirt!0x0089D6E0 : ?

Fzero:

Unhandled Exception
Code: 0xC0000005
Call stack info:
0x217AED94 : ?
dirt!0x0089D6E4 : ?

Actions #6

Updated by JMC4789 about 10 years ago

Unable to reproduce in F-Zero GX (the game I have of the ones you mentioned)

There is a crash with F-Zero GX + Vsync + dualcore, are you absolutely, 100% sure that you have vsync off in Dolphin and that your video card isn't automatically vsyncing you?

Is there any other information you can give me? We need to narrow this sucker down so we can work on it and squash the bug.

Actions #7

Updated by wespipes69 about 10 years ago

I'll check tonite when back home. Dolphin definitely has that option off. I'll check in the nvidia control panel.

BUT even if it's on, why is it stable with EFB>Texture? Would that be an issue or a clue at least to what's going on? And is that confirmed crash you mention being tracked? Is that something we can fix and/or merge other bugs into?

Actions #8

Updated by wespipes69 about 10 years ago

Ok, spent the past hour and have made some insightful discoveries.
1) I can confirm that with Vsync Fzero will crash. This should be its own bug. I remember seeing this behavior with Sega All-Stars racing also long time ago. Maybe this still exists. Vsync does not affect NFS: Drift.
2) Choosing anything other than native resolution will cause Fzero AND NFS Drift to crash soon into their races if using dual core+efb>ram. Repro steps below.

Repro:
1) Download/unzip and start Dolphin
2) Change to D3D or OpenGL, check EFB>Ram
3) Launch Fzero or NFS
4) Play. No crashes.
5) Change to 3x or any of the ‘autos’ for resolution
6) Repeat step 5
Result:
Crashes 100% of the time. 15/15 attempts.

I imagine this has regressed at some point. Revision testing will have to be another time. Should we update the bug title to something along the lines of “Upscaling+EFB>Ram+Dual core causes crashes in some titles”?

Actions #9

Updated by JMC4789 about 10 years ago

It's your GPU that's slowing down and causing the crashes due to the TFN merge drawing more power from your graphics card. The upcoming optimization won't fix this issue, but it will cause it not to happen on your computer.

Degasus explained what was going on and why your game was crashing, and why vsync was crashing and that both were related.

Basically, this is a valid issue you're running into, but there's no good fix as of now. The bug was brought out by increased GPU usage causing the GPU to stall, which crashes those games. vsync was an artificial way for that to happen before Dolphin was demanding on the GPU, but now, using EFB2Ram and 3x IR, your GPU lags and the game crashes.

I suggest making a new issue (Or maybe we could rename this one?) that says GPU slowdown/stalls cause crashes in certain titles or something?

Either way, let me know which way you want to go with this. We can force GPU sync for NFSN if you want, but F-Zero GX doesn't react well to it (fluctuating framerate makes it impossible to drive efficiently) on my machine. I don't have NSFN to know if it has negative affects like that. Basically, I'd force Single Core on F-Zero GX before sync GPU. Also, F-Zero GX doesn't need EFB2Ram, so alternatively, we could force EFB2Texture in the game and that may work around the crashes.

tl;dr: We need to make a list of games that crash with vsync on to figure out what games are affected by GPU stalling so there can be a warning to either use single core, or make sure your GPU won't stall.

Actions #10

Updated by MayImilae about 10 years ago

Let's not go changing any GameINI's just yet. The TFN optimizations are right around the corner and they should make this go away.

Actions #11

Updated by wespipes69 about 10 years ago

Well for these two games, EFB>Texture is just as good as EFB>Ram gfx-wise with no stability issues (that I've seen yet). So I'll just use that until these optimizations get in and then we can test again. Thanks for the responses.

Actions #12

Updated by JMC4789 about 10 years ago

On the Wiki, it says that NFSN requires EFB2Ram or the cars are black. Is that correct or incorrect?

Actions #13

Updated by wespipes69 about 10 years ago

Sorry, it's late, not sure how I forgot that, I even wrote that above. Yes, cars are black with Texture, but that's my favorite car color anyway. ;P

F-Zero looks identical to me in either mode.

Actions #14

Updated by JMC4789 about 10 years ago

Can you try the latest build now, it should alleviate some of the problems.

Actions #15

Updated by wespipes69 about 10 years ago

Just tried 4.0-1292 and saw no difference in stability with EFB>Ram in either Fzero or NFS Drift.

Actions #16

Updated by JMC4789 about 10 years ago

Well, I'm going to spew a bunch of opinion at me, and if we agree, I'll likely close this issue on the terms that the wiki is updated with this information, if we disagree, then I won't do anything.

F-Zero GX, I'm reluctant to change anything. GPU sync doesn't react well with it, and people don't really want to force single core on it. It's far easier to just force EFB2Texture and then we know it won't crash due to GPU stalling.

For Need For Speed Nitro, it's a bit more complicated. We could force 1x IR (ugly) and EFB2Ram (for proper emulation) or just write notes on the wiki about how this game behaves with the crashing on stalling.

I'm saying put this as a wontfix for the short term, but note all the behaviors on the Wiki. Because of Tev_Fixes_New increasing GPU load, it is obvious that this will be an issue for people with slower graphics cards and those running at higher Internal Resolutions in these games with EFB2Ram.

Let me know what you want to do.

Actions #17

Updated by wespipes69 about 10 years ago

Well personally since we can't do much about it for now and stability is the most important thing and people need DC for speed and they WILL upscale gfx, I would vote using EFB>Texture and making the appropriate notes on the wiki.

So you're saying if I have something stronger than a 660gt I wouldn't be seeing this? Are there other Dolphin settings that can alleviate the gpu load?

Actions #18

Updated by ZhaaedNightfang about 10 years ago

I had noticed that the last revision I used for F-Zero GX before I had the issue myself was 4.0-824. I decided to test a few more newer revisions and from my testing, it seemed my issues started at 4.0-850 for the most part. tev_fixes_new and the recent TEV fix did not seem to affect the frequency of the crashes for me. I recently performed some testing on recent revisions as well as 4.0-850, and 4.0-824 to 4.0-846, and here are my results for F-Zero GX:

4.0-824 to 4.0-846
-D3D EFB>Texture: Stable
-D3D EFB>RAM: Crashed sometimes
-OGL EFB>Texture: Stable
-OGL EFB>RAM: Stable

4.0-850 onward
-D3D EFB>Texture: Stable
-D3D EFB>RAM: Always crashes
-OGL EFB>Texture: Always crashes
-OGL EFB>RAM: Crashes

All tested at 1x IR, no enhancements or AA/AF, Vsync forced off in drivers with desktop composition off. In some cases it crashes with little to no hitching beforehand. The result does not seem to happen any more easily if I have everything turned up either. My specs are:

Intel Core i7-3770K 3.5-3.9 Ghz
RAM 8GB DDR3
Nvidia Geforce GTX760 2GB VRAM

Hope this helps a bit. It could be problematic if it also happens for Linux and Mac OS X with both EFB>Texture and EFB>RAM since only OpenGL is available.

Actions #19

Updated by JMC4789 about 10 years ago

assigning to degasus so he can take a look. This may just be the result of more accurate emulation, as perverse as that sounds.

Actions #20

Updated by JMC4789 over 9 years ago

Try using the latest development builds and running Need For Speed Nitro there by yourself. Use zero buffer so it feels like offline, and dualcore on. That will trigger the Dualcore Netplay stuff, which may fix your issue.

Actions #21

Updated by comexk over 9 years ago

Oh god what have you started recommending

Actions #22

Updated by JMC4789 over 9 years ago

I just wanted him to try it. Adding fake completion to the INI is scary. Since we removed a bunch of stuff from the game properties page, maybe we could put that there. Also, GPU sync is still broken right now.

Actions #23

Updated by wespipes69 over 9 years ago

How do I use zero buffer? No efb copies?

Actions #24

Updated by pauldacheez over 9 years ago

Zero buffer = zero pad buffer. He's telling you to run the game in netplay mode, which is sorta stupid, but whatever.

If you want to go the .ini route, add "GPUDeterminismMode = fake_completion" to your Dolphin.ini and run the game normally.

Actions #25

Updated by wespipes69 over 9 years ago

Well hard to tell netplay mode made a difference since regardless of that setting, along with scaling, efb, core qty., the game is rock solid stable now.

Been playing with DC+EFB>Ram+upscaling for 30 mins with zero issues. Looks like this has been resolved. Please close.

Actions #26

Updated by skidau over 9 years ago

  • Status changed from New to Fixed
Actions

Also available in: Atom PDF