You can also use DOSBox as a LibRetro core [https://docs.libretro.com/library/dosbox/] - this enables to use any of the filters the LibRetro provides on the frontend, including CRT.
This pattern should be the future of emulation development, where possible.
RetroArch is a pretty terrible UI, though - it takes everything bad about that Sony UI and it's not particularly performant, either.
Lots of stability and performance issues. Had difficulty getting a 3ghz Core 2 Duo to emulate SNES effectively with it... might've chosen the wrong engine out of the thousand alternatives, though.
Yes, you probably used a bsnes or higan core. bsnes is all about accuracy and that IS performance-hungry. Use a snes9x or something else if you want. See https://docs.libretro.com/meta/see_also/#snes
Yes and no. RetroPie can run SNES games using comparatively inaccurate emulators (SNES 9x, ZSNES; mostly sound bugs), but can’t run more accurate emulators like Higan acceptably.
RetroPie (or libretro) does not have a ZSNES core; ZSNES, apart from being wildly inaccurate, is largely written in x86 assembly and so there is no ARM version.
Additionally, the more modern snes9x cores have essentially the same sound emulation as higan (blargg's SNES_SPC library). I believe higan has done some modification of that code since importing it but regardless, the sound emulation in snes9x is very, very accurate.
Higan is indeed unparalleled for those who truly care about extreme accuracy, but snes9x is 99% there for the vast majority of users who just want to play games.
This pattern should be the future of emulation development, where possible.