What forks specifically are we talking about? Maybe if we list them all we can find/think of a common pattern?
The problem with “lr-(system name)” is the redundancy as has been said. I like the idea of codifying the speed of emulation (fastest/fast) in the core name.
From what I understand one of the main drives behind offering so many cores is portability and make RA/LibRetro available on a wide range of devices with very different hardware (and software) configurations. Could we thus try to hint at the type of device/hardware requirement the core was developed for in the name?
This might sounds over-complicated but we could have 3 categories (3 tiers! just like in the brawlers of yore!). Each category would have an easily identifiable core suffix associated to it. We could list a few platforms under each category somewhere in the Wiki/Doc (or expand the info file for easy identification from the menu) to guide the user.
For example:
Low power (low memory?) devices Example: Raspberry Pi and clone SoCs Intel Atom SoCs Pre-201x smartphones and tablets (Exynos xxXx + Mali 400) Wii
Suffix: lr-(system)-nimble
lr-snes-nimble (snes9x2002) lr-nes-nimble (quicknes) lr-arcade-nimble (mame2000) lr-gba-nimble (gpsp) etc…
Mid-Range devices ???
Suffix: lr-(system)-balanced lr-n64-balanced (Mupen64+) lr-snes-balanced (bsnes-mercury)
Highend devices nVidia Shield OnePlus 3 / Nexus … x86 PCs with Intel HD4000 and above
lr-(system)-mighty lr-psx-mighty (beetle HW) lr-n64-mighty (paraLLel) lr-wiigc-mighty (Dolphin)
Obviously the big issue with this approach is that some emulators/sytems (nes, gameboy etc…) run full speed even on modest hardware… I also understand the team has been reluctant to suggest some cores above others and the moment we start categorizing some may take offense?