I’ve been trying out the Citra core in Retroarch and noticed some severe speed issues not present in the standalone emulator. Citra standalone generally runs between 2 to 4 times as fast as the core.
Someone else noticed this as well, but j-selby believed the problem to be caused by a slow PC. The issue was brought up here on the github page for the core-
I commented on the issue as well, having the same problem despite my PC being significantly more powerful (4670k @4ghz, 8GB DDR3 RAM and a GTX 1060 6GB). I’ve done my best to ensure my comparisons are using identical settings and tested in identical areas with the same conditions onscreen. I also disabled vsync, and btw vsync being enabled seems to further break performance in 30fps 3DS games too, so that’s another issue.
This happens with other games as well, though I need to do some more testing before I can compile a thorough comparison list. For this particular test I used Kingdom Hearts 3D, which is a native 30fps game.
1x Resolution (native, 400x240)- Citra standalone- 107fps, Lilbretro core- 55fps
2x Resolution (800x480)- Citra standalone- 107fps, Libretro core- 28fps
8x Resolution (3200x1920)- Citra standalone- 75fps, Libretro core- 25fps
10x Resolution (4000x2400)- Citra standalone- 58fps, Libretro core- 24fps
I’m not trying to run this at 8 or 10 times resolution, but I still noted and documented the speed discrepancies. They’re quite apparent even compared at native res. And even at a very conservative 2x resolution bump, the libretro core is now failing to achieve full speed, while the standalone emulator chews through it with 4 times the performance. The funny part is looking at 10x resolution (4000x2400), Citra standalone is still achieving almost twice the game’s full speed. But it’s also slightly faster than the Libretro core is at native 1x resolution…
After sharing my results, j-selby stated that he believes the problem to be related to overhead in Retroarch itself and that there was nothing that could be done on the core’s end.
So what (if anything) should my next option be? I’m open to any advice on the matter. If this is an issue that should be reported, i’m unsure where to do it.