RetroPie/EmulationStation

100% Emulation station single thread usage

Closed this issue · 2 comments

I started a topic on the forum here about a week ago with no response. https://retropie.org.uk/forum/topic/30299/emulationstation-100-single-thread-usage

Nintendo Switch Tegra X1
Emulationstation version: V2.9.6RP
Controller used: Nintendo Switch Joy-Cons
Error messages received: None
Verbose log (if relevant):

Apr 12 23:48:45 lvl2: 	Parsing XML file "/opt/retropie/supplementary/emulationstation/resources/mamenames.xml"...
Apr 12 23:48:45 lvl2: 	Parsing XML file "/opt/retropie/supplementary/emulationstation/resources/mamebioses.xml"...
Apr 12 23:48:45 lvl2: 	Parsing XML file "/opt/retropie/supplementary/emulationstation/resources/mamedevices.xml"...
Apr 12 23:48:45 lvl2: 	Creating window...
Apr 12 23:48:45 lvl2: 	Created window successfully.
Apr 12 23:48:46 lvl2: 	GL vendor:   NVIDIA Corporation
Apr 12 23:48:46 lvl2: 	GL renderer: NVIDIA Tegra X1 (nvgpu)/integrated
Apr 12 23:48:46 lvl2: 	GL version:  4.6.0 NVIDIA 32.3.1
Apr 12 23:48:46 lvl2: 	Checking available OpenGL extensions...
Apr 12 23:48:46 lvl2: 	 ARB_texture_non_power_of_two: ok
Apr 12 23:48:46 lvl2: 	Added known joystick Nintendo Switch Combined Joy-Cons (instance ID: 0, device index: 0)
Apr 12 23:48:46 lvl2: 	Loading system config file /etc/emulationstation/es_systems.cfg...
Apr 12 23:48:46 lvl2: 	Parsing XML file "/home/garrett/.emulationstation/gamelists/arcade/gamelist.xml"...

How to replicate the problem: Start emulationstation and then view usage in top/htop. Emulationstation thread is at or near 100% always (cpu frequency also gets pushed to max 2.091Ghz).
Vsync is on and I get a constant 60fps no matter what, turning vsync off and I get 260fps so this is not an issue with my hardware not being able to draw frames fast enough.
This happens regardless of the theme selected or the menu currently viewed.

I have another system running emulationstation on x86_64 and it does not have this issue.

compiled the latest development version on both my z86_64 pc and my switch and only the switch has the problem with 100% thread usage for emulationstation

pjft commented

I appreciate posting in the forums first, and after a while posting here.

The key challenge you face in the forums - and will face here - is that this is an ES-specific issue you're finding in a platform that not only RetroPie doesn't support (which is an usual safeguard), but also, more importantly, that I don't think there'd be many people around here that'd have it and be able to test things or debug things in it.

As you stated, ES does not suffer from this issue in the supported platforms, nor in most other CPU-type installations.

I imagine that if someone runs ES on another setup with similar graphics specs, maybe it could help understand if it's a video driver/hardware thing, or something specific with Switch, but there is little-to-nothing we are able to do on our end here, as it's not something we can replicate on our hardware - supported or not.

Apr 12 23:48:46 lvl2: 	GL vendor:   NVIDIA Corporation
Apr 12 23:48:46 lvl2: 	GL renderer: NVIDIA Tegra X1 (nvgpu)/integrated
Apr 12 23:48:46 lvl2: 	GL version:  4.6.0 NVIDIA 32.3.1
Apr 12 23:48:46 lvl2: 	Checking available OpenGL extensions...
Apr 12 23:48:46 lvl2: 	 ARB_texture_non_power_of_two: ok

I am aware that ES isn't great at idle CPU consumption, mind you. It might be that at some point something is done that happens to improve this. That being said, for now, I'm closing this and let's stay with the forums as maybe other users run ES in that setup and may shed some more light.

Just a thought: Have you tried using the Power Saving settings, and does it help in any way? Does CPU drop at least when power saving settings are on and running, I'm curious?

Let's follow up in the forums.

Thanks.