Emulator Issues #12486
F-Zero X: Multiple Second Stutter on Certain Transitions
Game ID? (right click the game in the game list, Properties, Info tab)
What's the problem? Describe what went wrong.
After selecting a track, you pick your car. When you pick your car, you'll get a several second long stutter. It will stutter if you go back and forth as well.
What steps will reproduce the problem?
Start up game, Select Grand Prix Mode, Select Track, Select Car.
Is the issue present in the latest development version? For future reference, please also write down the version number of the latest development version.
Is the issue present in the latest stable version?
Unknown 5.0 won't work with my NAND. I tested back to 5.0-10658 and the issue existed
What are your PC specifications? (CPU, GPU, Operating System, more)
Core i7-6700K, GTX 1070, Windows 10
Is there anything else that can help developers narrow down the issue? (e.g. logs, screenshots,
configuration files, savefiles, savestates)
You can mostly fix the issue by "disable JIT Branch".
Leoetlino later identified that falling back "Jit64::bx" would also mostly fix the slowdown with less of a performance hit. Both caused a sizeable performance hit.
#1 Updated by JMC4789 about 1 month ago
There's actually multiple bisect points from a really complicated bisect, changes in settings, etc. I've determined the actual culprits though. The game's stutter was almost non-existent in 5.0-2012, the game was then broken in 5.0-2021, and when it was fixed in 5.0-2031, the stutter was there. At some point after this, the stutter was reduced greatly, but was a little bit slower than 5.0-2012. Then, when Spycrab added the Jit Follow Branch option in 5.0-8377, the gigantic stutter returned.
Here are the potential culprits to the regression
5.0-2021 - Store the JIT Blocks in std::map - https://dolphin-emu.org/download/dev/ef7a809fad6463b5d38c5ebe5270772701af4789/
5.0-2031 - Jitcache freeing hotfix - https://dolphin-emu.org/download/dev/5ed94a0f670c15cbb1f097545309692fbba4dfae/
Both of these commits were by degasus. The regression does not exist immediately before these builds, and exists in the next working build.
- Fixed in set to 5.0-14068
- Status changed from Fix pending to Fixed