~mil/sxmo-tickets#268: 
Sluggish in landscape

(Pinephone on edge with all current updates): If you rotate the phone (either use auto-rotate or manually rotate) to landscape everything turns incredibly slow. This has been an issue for a while. It is very easy to notice this in dmenu, but this is also present in Firefox and all other applications I testet. If you enable the cursor, you can also see how the cursor will drag behind the touch or mouse significantly.

To try:

Open dmenu in portrait mode and slide up and down with your finger on dmenu to select the different menu items.

Open dmenu in landscape mode and slide up and down with your finger on dmenu to select the different menu items.

Status
REPORTED
Submitter
~somefoo
Assigned to
No-one
Submitted
1 year, 2 months ago
Updated
1 year, 17 days ago
Labels
No labels applied.

~noneofyourbusiness 1 year, 2 months ago*

I successfully reproduced it with pmOS/alpine edge + nightly sxmo build

~noneofyourbusiness 1 year, 2 months ago

When taking a look at sxmo_rotate.sh it seems like touch inputs are transformed, which I suspect is where the sluggish part comes from - but that should only be true for touch inputs --

perhaps a goal for the release after 1.5.0?

~somefoo 1 year, 2 months ago*

Ye, good suggestion! I just checked it out by disabling the transformation (just comment-out the applyptrmatrix in the rotright/rotleft) and sliding the finger as if you still in portrait mode. The sluggishness persists. This is also the case if you connect a mouse.

~somefoo 1 year, 2 months ago

If you disable the xrand -o right, the "landscape" touch also works just fine while the screen is still drawn in portrait mode :)

~somefoo 1 year, 2 months ago

Yea, I believe it is an issue with drawing the screen in landscape mode. If you run glxgears (sudo apk add mesa-demos) your framerate drops drastically in landscape mode (from 60 fps down to 20).

~noneofyourbusiness 1 year, 2 months ago*

Hm, rotation is done via xrandr -o left|right|etc (which seems to be the likely cause after disproving the input transformation - damned be X!)

wonder if we can use some other tool

~somefoo 1 year, 2 months ago*

Any transformation will actually cause a slow down. You can try "xrandr -x" for example, which just mirrors the frame on the x-axis. I already tried fiddling with some other options in xrandr; nothing yet :P

Examples:

slow: xrandr --output DSI-1 --transform 1,0,0,0,0.5,0,0,0,1

slow: xrandr -x

slow: xrandr --output DSI-1 --scale 0.5

slow: xrandr -o right

slow: Adding line <Option "Rotate" "right"> to /usr/share/X11/xorg.conf.d/90-monitor.conf

slow: Following https://wiki.postmarketos.org/wiki/Display to rotate

medium: xrandr --output DSI-1 --scale 1.5

fast: xrandr --output DSI-1 --scale {2,4}

fast: xrandr {any default value :P}

~noneofyourbusiness 1 year, 2 months ago

Found a post with someone else having the issue, seems like xorg.conf change could mitigate it? https://forums.developer.nvidia.com/t/very-poor-framepacing-and-performance-when-using-xorg-rotation/178451/23

~somefoo 1 year, 2 months ago*

Hmm, I am not so sure it is X directly causing this. If you do (via ssh of course ;)):

sudo service stop xdm

sudo startx

export DISPLAY=:0

sudo xrandr -o right

Everything works just fine.

~somefoo 1 year, 2 months ago

Well, I am done debugging for today xD I hope more people look into this, after all, this will affect anyone who wishes to use the phone in landscape; this performance issue will be affecting anyone watching videos :P

~noneofyourbusiness 1 year, 2 months ago

good find!

~somefoo referenced this from #264 1 year, 2 months ago

~trbl 1 year, 1 month ago*

x11 relies on 'crop' which isn't supported by the mali gpu, this is not a sxmo bug and not fixable on X

This is mentioned in the wiki: https://wiki.pine64.org/wiki/Mali_Driver

~somefoo 1 year, 1 month ago

Hmm, I dunno. That page certainly looks like a translation mess. Also the rotation works just fine when just running startx without xdm.

~ryan_raymond 1 year, 1 month ago

I experienced that problem using the xf86-video-fbdev driver. Can someone confirm please that this is a cpu-only non-accelerated driver? X11 documentation is a mess sometimes. No disrespect to X11 devs.

~pinephoneuser01 1 year, 17 days ago

Can confirm that stopping xdm per somefoo fixes the performance issue.

Register here or Log in to comment, or comment via email.