I'm not sure if this has been reported yet, but I started using the Switch version of RetroArch for the first time a few days ago (however I'm very familiar with the PC versions) and was experiencing random stuttering on the SNES9x and Genesis Plus GX cores (the only two cores that I've tried so far).
The stuttering would last for 2 - 6 seconds before getting triggered again and would not affect the framerate counter that's been claiming a consistent 59.9 - 60FPS.
I only experimented with Sonic 3 and Super Mario World. In Sonic 3 the stuttering seemed to primarily (but not exclusively) occur when waterfall and fire effects were on-screen. In Super Mario World the problem seemed to be completely random, but would always appear at least once per level.
I tried the latest nightly build, the latest stable build, whatever version the homebrew store pulls down, different CFW's, SD cards, exFAT, FAT32, ROM versions, overclocking, underclocking, etc. and nothing made a difference.
I'm not using any shaders, and the only option that I've been changing has been disabling bilinear filtering.
So when I realized that the only consistent change that I would make upon a fresh installation was disabling bilinear filtering, I tried leaving it on and that fixed the problem. However that wasn't good enough for me since I hate the blur effect.
Next I disabled bilinear filtering again and turned on integer scaling, which forced a true 1:1 aspect ratio, which also fixed the problem. I'm not a fan of the horizontal borders and larger vertical borders caused by the windowed game though, and there's no way to stretch the window to scaled full screen 4:3 without overscan when using integer scaling (as far as I can tell anyway), so I kept messing around.
Finally I left bilinear filtering off and set RetroArch to allow the core to enforce the aspect ratio (scaled full screen 4:3) and that seems to have fixed the problem as far as I can tell from my test on Sonic 3. I haven't had time to test Super Mario World yet (it's late), but I will try it tomorrow when I have free time.
In the end the display type is exactly the same, but the configuration used to get to this point is different. That has to be a bug, right?