Retroplayer SNES FPS drops on powerful Intel hardware

  • Hello,

    I'm trying to solve an issue I'm having on my i5 NUC11 (Tiger Lake) box where I get intermittent but very noticeable FPS drops using Retroplayer, with any SNES core. I am unable to play the first level of Super Mario Bros (via the Super Mario All Stars ROM) without seeing these drops. Here is a debug log of me playing the first level, with some audio/video/timing logging components enabled: http://ix.io/2U6j

    This happens on the release build of LibreELEC, the nightly build (which I am using in the above log), on Ubuntu and Arch. It happens on my old, weaker-but-still-powerful-enough-for-this NUC7 as well. I have tried different controllers, different audio output devices, different resolutions/refresh rates and a different monitor/TV. I have tried disabling rewind/auto-save, even though CPU usage was already low with them enabled. It is the NTSC version of the ROM with the display at 60Hz, but I have also tried the EU version at 50Hz. I have tried disabling power saving features in the BIOS.

    Am I the only one seeing this? Is anyone actually able to play the first level of SNES Super Mario Bros in its entirety without frame drops, on intel or any x86 hardware?

  • Is nobody else experiencing this? Would anybody be so kind as to try playing the first level of Super Mario Bros on SNES (NTSC) and see if there is any jerkiness?

  • Hello SupervisedThinking,

    Yes in the above log I was using Snes9x, but it happens with all variants of Snes9x and BSNES. I have not been able to play the first level of Super Mario Bros (Super Mario All-Stars) without some frame drops. The CPU and GPU usage is always low throughout.

  • Hello blueribb,

    If you are able to find the time, could you please test it again? A year ago you would have been running Kodi 18, right? The frame drops occur for me on both Kodi 18 and 19.

  • I no longer have the game roms. Have you tried running these games with Windows ?

    My i5 Intel NUC is 5 to 7 years old and has a completely different chipset than either of yours.

  • Hello blueribb,

    Unfortunately at this time it would be very inconvenient for me to install Windows on either of these machines. I am still hoping someone else can also produce this problem.

  • I'm pretty sure this is related to some quirky UEFI/BIOS setting. In general Snes9x would even run on a toaster & I would guess for whatever reason your system does not clock up and increase it's speed.

    It would be interesting what result you get when you would use my fork, check out the link in my signature & give it a try. I'm curious if it works with Retroarch on LE base.

  • There is a warning but I don't know if this is related:

    Code
    Mar 25 23:55:18.018661 LibreELEC kernel: i915 0000:00:02.0: drm_WARN_ON(common_len <= 0)
    Mar 25 23:55:18.018665 LibreELEC kernel: WARNING: CPU: 4 PID: 1 at drivers/gpu/drm/i915/display/intel_dp.c:2362 intel_dp_compute_config+0xd53/0xeb0
    [...]
  • There is a warning but I don't know if this is related:

    Code
    Mar 25 23:55:18.018661 LibreELEC kernel: i915 0000:00:02.0: drm_WARN_ON(common_len <= 0)
    Mar 25 23:55:18.018665 LibreELEC kernel: WARNING: CPU: 4 PID: 1 at drivers/gpu/drm/i915/display/intel_dp.c:2362 intel_dp_compute_config+0xd53/0xeb0
    [...]

    [TGL] i915 0000:00:02.0: drm_WARN_ON(common_len <= 0) (#3120) · Issues · drm / intel · GitLab

    There are 2 reports of this. Now three.

    Feedback overnight from the other user reporting the error “it disappeared on 5.11 for me.“

  • [TGL] i915 0000:00:02.0: drm_WARN_ON(common_len <= 0) (#3120) · Issues · drm / intel · GitLab

    There are 2 reports of this. Now three.

    Feedback overnight from the other user reporting the error “it disappeared on 5.11 for me.“

    I also run Arch Linux on the same machine (running 5.11.11) and the SNES frame drop issue occurs there too. So unfortunately it might not be related to the issue I am having.

    I'm pretty sure this is related to some quirky UEFI/BIOS setting. In general Snes9x would even run on a toaster & I would guess for whatever reason your system does not clock up and increase it's speed.

    It would be interesting what result you get when you would use my fork, check out the link in my signature & give it a try. I'm curious if it works with Retroarch on LE base.

    I had already tried disabling any power saving features or anything in the BIOS I thought might be throttling performance in order to save electricity. I confirmed the CPU frequency was always at the maximum when these settings were disabled. There was no improvement, unfortunately. I will try your build soon and see what happens.

  • The TGL driver support in Linux has a ways to go I think. The SKL Nuc6 runs Kodi better.

    I generally agree, but in this case the exact same retroplayer SNES FPS drops occur on my NUC7 as well.

    I'm pretty sure this is related to some quirky UEFI/BIOS setting. In general Snes9x would even run on a toaster & I would guess for whatever reason your system does not clock up and increase it's speed.

    It would be interesting what result you get when you would use my fork, check out the link in my signature & give it a try. I'm curious if it works with Retroarch on LE base.

    I tested your latest build, and unfortunately the problem still occurs with Kodi retroplayer.

    Although using the standalone Retroarch application instead, to play the same ROM, is perfectly smooth as I expected. I still really want to use Kodi retroplayer where possible, for that seamless media center > gaming experience.

  • Although using the standalone Retroarch application instead, to play the same ROM, is perfectly smooth as I expected. I still really want to use Kodi retroplayer where possible, for that seamless media center > gaming experience.

    Well then it's most likely related to Retroplayer itself. Have you checked your refresh rate in display settings before you've started games? Could you set it to matching PAL/NTSC rates so 50Hz/60Hz?

    CvH snes games should run on a toaster, I can't imagine a single compile option screws it all over

  • Well then it's most likely related to Retroplayer itself. Have you checked your refresh rate in display settings before you've started games? Could you set it to matching PAL/NTSC rates so 50Hz/60Hz?

    Yes, it is always set to 60Hz for NTSC.

    can you test if the same happens at kodi at windows too ?

    wondering if we miss something at compiling

    If I am able to create a live USB for Windows, so that I don't have to install the OS, I might try this. Ideally somebody here would just try playing NTSC Super Mario Bros with retroplayer on their x86 machine and tell us if there are any frame drops.