Hi,

Due to myself working on OpenChrome graphics (VIA Technologies Chrome 
integrated graphics) stack, I have increasingly noticed X Server performance 
issues since Version 1.18 since I use fairly old computers for DRM development.
I posted about this while back, but got very little attention.

https://lists.x.org/archives/xorg-devel/2017-July/054210.html

The only person who replied to it blamed it on SiS DDX's incomplete EXA 
implementation.
I actually think it affects all devices, in my opinion.
Since that post, I got many issues that affected the stability of OpenChrome 
DRM stabilized, so I am now in a position where I can use OpenChrome DDX + 
OpenChrome DRM without major stability issues.
Hence, this brings me to the X Server severe performance regression issue that 
has been bothering me.
    Just for disclosure, there is currently no 2D acceleration for OpenChrome 
DDX + OpenChrome DRM, hence the rendering speed is fairly slow.
That being said, everything seems very slow with X Server Version 1.19.
For example, the hardware I use has hardware cursor, but the cursor movement 
speed is very sluggish, and comes with annoying hiccups when moving the mouse 
cursor.
I am wondering if the X Server is performing excessive task switching that it 
did not used to do with Version 1.15.
Window dragging movement is much slower with Version 1.19 versus much speedier 
Version 1.15, and again, without 2D acceleration we are talking about here.
    For OpenChrome DRM development, I actively maintain two branches.
I call them drm-next-3.19 branch and drm-next-4.18 branch.

https://cgit.freedesktop.org/openchrome/drm-openchrome/

drm-next-3.19 branch is tested mainly with X Server 1.15 and XFCE (i.e., 
Xubuntu 14.04.1 without hardware enablement) and drm-next-4.18 branch is tested 
mainly with X Server 1.19 and XFCE (i.e., Xubuntu 16.04.4)
Again, due to lack of experience and resources, there is no 2D acceleration for 
OpenChrome DDX + OpenChrome DRM at this time.
OpenChrome DRM code is essentially the same between the two branches.
When it comes to performance, drm-next-3.19 branch's code performs far better, 
and it appears that X Server 1.15 is the reason for this.
    Some reading this might want to blame me for the lack of 2D acceleration, 
but for OpenChrome, we do still have 2D acceleration support (EXA) when not 
using OpenChrome DRM, and the performance has been going down since X Server 
1.11 (i.e., Lubuntu 12.04).
When EXA is in use, the performance is roughly something like Version 1.11 > 
Version 1.15 > Version 1.18 / 1.19.
Rendering / window movement performance has been going down for the last 6 
years even with the same exact DDX code (OpenChrome DDX can be compiled 
unmodified all the way back to X Server Version 1.7), and this is particularly 
noticeable with older computers.
    Perhaps, this issue cannot be dealt with before X Server Version 1.20 is 
released, but if someone knowledgeable with it can look into it during X Server 
Version 1.21 development cycle, that will be appreciated.

Kevin Brace
Brace Computer Laboratory blog
https://bracecomputerlab.com


_______________________________________________
xorg-devel@lists.x.org: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to