libretro / libretro/RetroArch

Slow framerate and shuttering in Droidian (Mobile GNU Linux)

Open
#14,689 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
14.1k
Forks
2.2k
Avg merge
7h 35m
Merged PRs (30d)
51

Description

First and foremost consider this:

  • Only RetroArch bugs should be filed here. Not core bugs or game bugs
  • This is not a forum or a help section, this is strictly developer oriented

Description

I've manually compiled RetroArch in Droidian, a mobile GNU Linux distribution running with libhybris and halium. This has been done because flatpak's refused to work for me due to a OS issue.

While inside Waydroid, an android container for linux the emulation works perfectly fine, on Droidian it shutter a lot and the performance is bad.

Tested with a PPSSPP core from christianhaitian/retroarch-cores. Couldn't find any official cores for aarch64 linux.

One note. PPSSPPSDL works just fine on the same device.

PPSSPPSDL was compile using

cmake -DUSING_GLES2=ON -DUSING_X11_VULKAN=OFF -DUSE_FFMPEG=OFF -DUSE_WAYLAND_WSI=OFF .

Expected behavior

Running with GLES V3, should probably make use of the device's driver.

Actual behavior

Slow framerate and shuttering

Steps to reproduce the bug

Compilation on Droidian:

sudo apt-get -y install build-essential libxkbcommon-dev zlib1g-dev libfreetype6-dev libegl1-mesa-dev libgles2-mesa-dev libgbm-dev libavcodec-dev libsdl2-dev libsdl-image1.2-dev libxml2-dev yasm libv4l-dev libsdl2-2.0-0
git clone https://github.com/libretro/RetroArch.git
cd RetroArch
git submodule update --init
./configure --disable-x11 --enable-wayland --enable-v4l2 --enable-pulse --enable-sdl2  --enable-threads --enable-ozone --enable-xmb --enable-materialui --enable-opengles
make -j3 ( Redmi Note 9 Pro 3 works file without crashing phosh)
sudo make install
Bisect Results

[Try to bisect and tell us when this started happening]

Version/Commit

master / 74d0dd16fb5729bfe254194cff637f57049b7a30

  • RetroArch: master
Environment information
  • OS: Droidian
  • Compiler: make

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the reported master build on Droidian using the listed configure and make commands, then compare its GLES behavior with Waydroid and PPSSPPSDL on the same device. Investigate the RetroArch rendering path involved in the GLES and Wayland configuration, and consider the issue complete only when the cause of the slow framerate and stuttering is identified with supporting test or bisect results.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, cmake, linux
Domain
computer-graphics, mobile-dev, operating-systems, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.