Bug 7139 - optimised fbBlt isn't used in Xvnc
Summary: optimised fbBlt isn't used in Xvnc
Status: CLOSED FIXED
Alias: None
Product: ThinLinc
Classification: Unclassified
Component: VNC (show other bugs)
Version: 1.3.1
Hardware: PC Unknown
: P2 Normal
Target Milestone: 4.10.0
Assignee: Pierre Ossman
URL:
Keywords: prosaic, upstream
Depends on: 5241
Blocks: performance
  Show dependency treegraph
 
Reported: 2018-03-23 15:42 CET by Pierre Ossman
Modified: 2018-09-18 16:17 CEST (History)
1 user (show)

See Also:
Acceptance Criteria:


Attachments

Description Pierre Ossman cendio 2018-03-23 15:42:46 CET
There is a bug in our version of Xorg that makes fbBlt use an un-optimised code path. This is a fairly common operation so it is important for many use cases that it performs well.

This is fixed in newer versions of Xorg:

https://cgit.freedesktop.org/xorg/xserver/commit/?id=a2880699e8

A quick test here with glxgears, firefox and some youtube resulted in a decrease of 17% to 12% for fbBlt in its overall CPU usage, as measured by perf.
Comment 1 Pierre Ossman cendio 2018-09-18 16:16:44 CEST
Did a test with Xvnc from 4.9.0 and from build 5901. Manually started Xvnc, no client and just glxgears. perf then reports 34% vs 17% of the time spent in fbBlt.

I can also see the new version calling a sse2 optimised sub-function.

Lastly, glxgears reports a bit higher frame rate (2000 vs 1700).

Seems like we are indeed getting the faster version now.

Note You need to log in before you can comment on or make changes to this bug.