AnsweredAssumed Answered

Reduced graphic performance with rotated screen (imx6, sabresd)

Question asked by Jonas Höppner on Apr 9, 2015
Latest reply on Aug 9, 2016 by Jason Pritchard

Hello everybody,

 

we saw a massivly reduced graphic performance on our boards as well as on the sabresd with imx6q when the screen was rotated in X.

To reproduce this behaviour one could use either the hellogl_es2 tool or x11perf. The rotatation was done with xrandr -o "inverted" or xrandr -o "normal".

Test images on the sabre board have been

fsl-image-qt5-x11-imx6qdlsolo.sdcard from the L3.10.53_1.1.0_ga_images_MX6 release and

fsl-image-x11-imx6qdlsolo.sdcard from the  L3.10.17_1.0.2_141020_images_MX6 release.

 

For hellogl_es2 the frame rate reduce from about 100 FPS to 16 FPS.

In top you can see the process  Xorg has about 95% cpu usage in the rotated case, while using about 10% in normal mode.

 

With the x11perf tool I got following results:

xrandr -o "normal"

x11perf -scroll500 -copypixwin500 -comppixwin500 -compwinwin500 -repeat 1

 

  20000 reps @   0.4391 msec (  2280.0/sec): Scroll 500x500 pixels

  12000 reps @   0.5007 msec (  2000.0/sec): Copy 500x500 from pixmap to window

  12000 reps @   0.5003 msec (  2000.0/sec): Composite 500x500 from window to window

  12000 reps @   0.5007 msec (  2000.0/sec): Composite 500x500 from pixmap to window

 

xrandr -o "inverted"

x11perf -scroll500 -copypixwin500 -comppixwin500 -compwinwin500 -repeat 1

 

   5000 reps @   1.2182 msec (   821.0/sec): Scroll 500x500 pixels

   3600 reps @   1.4377 msec (   696.0/sec): Copy 500x500 from pixmap to window

   3600 reps @   1.4278 msec (   700.0/sec): Composite 500x500 from window to window

   3600 reps @   1.4383 msec (   695.0/sec): Composite 500x500 from pixmap to window


It seems that the rotation is done completly in software by the Xserver.

Has anybody noticed the same or is there even a solution to this?


Regards, Jonas


Outcomes