in Retropie v4.8.4 (2023) and PI4 8gb what's the best: KMS or FKMS video driver ?
-
TO BE OR NOT TO BE THIS IS THE QUESTION:
I have readed many and many manuals and guide about FKMS or KMS but witout a date of pubblication there are too many mismatch errors that confused all my information about "FullKMS" and "FakeKMS" , so I Post this question now (11/5/2023), with latest Retropie 4.8.4 installed on Raspberry PI4 8GB, and all systems working well.Before you answering to my question, read this:
I also have installed Vulkan Driver (thanks to PIKISS additions installed on Pixeldesktop over Retropie 4.8.4) so for now I can RUN correctly also "psspp-sdl" the brand new Sony PSP emulators that use Vulkan Driver (most accurate and quick than the "old ppsspp emulator" and the brand new DuckStation a quick and accurate emulator for Sony PS1 (thanks to PIKISS that uses Vulkan Driver instead of GL/SDL Driver), and I have also recompiled the Sega Supermodel3 Emulator (thath only works with Legacy option video driver).So ok, all my systems works fine under EmulationStation of Retropie v4.8.4 (integrated with 3 manual added emulators)...
But my Question is:
What's the best video driver "FKMS" or "KMS" in boot/config.txt ?Can I expect some improovements (better performance?) changing from actual FKMS to KMS video driver ?
And if yes, can you post a little guide or a "warning guide" ?
for example a possible answer can be:
Yes, Full "KMS" works better than "FakeKMS" on PI4 8GB but you have also to change "hdmi_mode=...." and "group_mode=...." parameters in boot/config.txt and edit another file like: /boot/cmdline.txt.... and add a new line: "video=.................." to get KMS still working well on Retropie v.4.8.4....
Thank You -
@giandeejay I'm using KMS and I'm happy with it. That said, there were several things to consider when I did the switchover: Video modes had to be set again (as they are called differently) and some emulators that relied on
dispmanx
needed to be changed or recompiled, IIRC. But nothing too bad.
I think the best you can do is just to make a backup of your SD card and go for it. If you're unhappy or stuck, you can just roll back.About the other things you're mentioning: PPSSPP and Duckstation with Vulkan support really sounds interesting. I'd like to try that, too. :D
Do you have a guide that you followed? Or any other tips? -
@ecto HI thank (effectively) I can try KMS with a cloned microsd and look what happens...
For Vulkan Driver (not already supported by Retropie v.4.8.4 for Raspberry Pi platforms),
I have created a self made trick:After installing Retropie v.4.8.4 (latest version on my PI4) I have also installed Pixeldesktop (option in normal retropie-setup) . With Pixeldesktop Installed (you will find IT in Emulationstation> Ports > Desktop)...then...
To install PIKISS (here is the project)
https://github.com/jmcerrejon/PiKISS#readmeThe installation is very simple type (copy and paste this line and press <Enter>) :
curl -sSL https://git.io/JfAPE | bashTo Update (only) PIKISS to latest version (valid for future update) the 2 command are:
cd piKiss
git pullSo once (Pixeldesktop and Pikiss) are installed:
Now you can launch Desktop manually from the linux terminal (or from Emulationstation>Port>Desktop)...I prefer to quit Emulationstation, and simply using the line command:
startx (to launch the desktop)
Now from desktop (you must be connected on internet by LAN or by WIFI to run PIKISS shell script), under menu icon > System Tools> you can find Pikiss program (excecute it in a terminal window), and first of all you can install VulkanDrivers from Pikiss (very similar to retropie-setup menu),
go under the voice Configure from menu > and next select Vulkan (compile/update Vulkan Mesa driver (experimental))OR Directcly from linux terminal you can do:
cd piKiss (enter on pikiss directory, because is situaed in /home/pi/piKiss)
and executing piKiss shell program with next line:
./piKiss.shFirst of all you can install VulkanDrivers from Pikiss (very similar to retropie-setup menu),
go under the voice Configure from menu > and next select Vulkan (compile/update Vulkan Mesa driver (experimental))After installation of Vulkan Drivers (long time, depends on your internet connection), you can return in PIKISS program to install under PIKISS > Emulator > PPSSPP-SDL or other Emulators you want present in PIKISS,
remember that this emulators are OUT of Retropie / Retroarch / Emulationstation (so you have NO conflict between Retropie pre-installed emulators like LR-PPSSPP , and next PIKISS installed emulators)Look this video if you prefer:
The last step is to create a new emulators or a new system in Retropie in
/home/pi/.emulationstation/es_systems.cfg (BEFORE DOING THIS)Look at the Official Retropie Guide (how to add a new system in Retropie), from
https://retropie.org.uk/docs/Add-a-New-System-in-EmulationStation/Hope I Help You !
-
With the KMS driver you don't have screen tearing.
I am very interested in Duckstation .I believe it will be possible to install it on RertoPie , when the support for Bullseye is completed. How well does it run? If you can, try it with Bloody Roar II and check the frame rate. Thanks!
-
@giandeejay I've been using vulkan on my pi4 64bit bullseye (which uses KMS by default) setup for a while. I only use Retroarch emulators for its crt shaders but I've only noticed better performance with
lr-flycast
.lr-swanstation
(duckstation), andlr-beetle-psx
all perform worse than the software renderer. GL renderer was faster inlr-ppsspp
. I haven't tried the n64 emulators.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.