Did you notice if you turned force_turbo off?
I think you would have stated if you were using a usb.
I haven't used romsets, I don't know how everything handles a huge job, but you say it was rather suddenly that you noticed and not after you add roms.
If you use ssh, you could login and type htop to display the processes to see if there is something slowing down.
Thanks @pjft , I think you're right and its a combination of me misremembering and also the larger fontsize on my nes/snes theme amplifying the problem to an extent.
I just checked my Megadrive build which uses a much older version of ES with a Raspberry pi 2 and a slower SD card with my Newgen theme (my new sd wont be running at full speed without overclocking anyway ).
The previews for that build are big in pixel dimensions but I managed to compress them quite well using pngoo so the filesize of each image ranges 100-200kb (originally they were 400-900KB) and even then enabling show FPS I can see the frame rate drop in the same way. I think because the fontsize for the list on that theme is smaller the occasional skipping just isn't as noticeable but is still there.
So basically I'm just noticing something that has been there from the beginning. And for anyone else who has the problem it's easily remedied by making sure you keep the preview image filesize as low as possible.
I did notice one other strange thing regarding framerate but I need to test more. The carousel on my new theme seems to run around 60fps on a rpi3 but occasionally when exiting out from a system the framerate drops to around 45ps and stays at that frame rate until going into another system and backing out again. Obviously doesn't affect things too much but just seemed odd.
@davej Looks like that's it! Turning threaded video on allows for both to coexist without the noticeable slowdown. Strangely enough, I have no recollection of having turned that off. Looking at that other thread you linked it would appear that "on" is the default, right? I will admit to the possibility that I may have switched it off not knowing what it was for, but I don't recall having done so. I'm also now finding that the Threaded Video reverts back to OFF after I exit out of a rom to retroarch, despite selecting to save the core override. When I check the contents of the retroarch.cfg threaded video is set to "true".
Any thoughts on that?
EDIT: After going into the RetroPie Setup It appears that while retroarch.cfg was set to "true", all of the problem emulators were set to "false" (which I believe overrides the retroarch.cfg). Going into them individually and changing them seems to have sorted this out. For anyone else who might be in the same situation, I found these by going to the RetroPie section in Emulation Station and hitting...
RetroPie Setup > Configuration / tools > configedit >advanced configuration>Configure Libretro Options>and then choosing the emulator/retroarch.cfg and turning video_threaded from false to true.
That did the trick! I feel kinda silly. It froze the first time I messed with it, so I didn't think to try it again. Bumping it up to 40 or 60hz, saving the game override, and resetting completely fixed a super slow laggy part.