Bug 710385 - Performance regression from non-surface to surface support driver
Performance regression from non-surface to surface support driver
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: xorg-x11-drv-qxl (Show other bugs)
Unspecified Unspecified
urgent Severity urgent
: rc
: ---
Assigned To: Søren Sandmann Pedersen
Desktop QE
: Regression, Reopened, Triaged
: 738416 (view as bug list)
Depends On:
Blocks: 612566
  Show dependency treegraph
Reported: 2011-06-03 05:39 EDT by Marian Krcmarik
Modified: 2014-06-18 05:14 EDT (History)
12 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2013-10-08 00:47:00 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Output of x11perfcomp (23.60 KB, text/plain)
2011-06-03 05:44 EDT, Marian Krcmarik
no flags Details

  None (edit)
Description Marian Krcmarik 2011-06-03 05:39:02 EDT
Description of problem:
Since subjectively I have a feeling that surface support did not bring expected performance improvement, moreover It seems to be worse than It was without surface support (subjective observation, not based on real data) I run bunch of artificial performance tests provided by x11perf tool. Even though those tests are artificial and do not measure final user experience from spice client point of view It's important from host point of view when many VMs running on the host regards to source consumption.
I run x11perf test in two cases:

1. Run RHEL6.1 guest on RHEL6.1 host (localhost) with xorg-x11-drv-qxl-0.0.12-2.1.el6_0.1 driver.
2. Run very same guest as in case 1, only one difference is the driver: 	xorg-x11-drv-qxl-0.0.12-9

In both cases nothing else was running on host, the same instance of qemu-kvm was used with only difference in qxl driver version.

Results output by x11perfcomp:
x11perf contains 369 tests, performance when using 0.0.12-9 was in comparison with 0.0.12-2.1.el6_0.1 in:
97 tests <1% of performance of 0.0.12-2.1.el6_0.1
90 tests 1-10%
54 tests 10-50%
60 tests 50-100%
68 >100%

Please consider those results especially those tests when performance of the latest driver is under 1% of the older one without surface support.
I rerun those test 3 times with similar results. Error of measurement when tests run on the same setup including the same qxl driver version was under 15%.

Version-Release number of selected component (if applicable):
Guest, client, host: RHEL6.1

How reproducible:
Comment 2 Marian Krcmarik 2011-06-03 05:44:46 EDT
Created attachment 502766 [details]
Output of x11perfcomp
Comment 7 Andrew Cathrow 2012-02-28 09:21:51 EST
*** Bug 738416 has been marked as a duplicate of this bug. ***
Comment 9 David Jaša 2012-02-28 10:43:32 EST
Another consideration: there was a patch to upstream QXL recently that enables image caching by default, making Spice performance way better with Linux guest. That patch should be included in the update as well.
Comment 10 Søren Sandmann Pedersen 2012-03-06 11:25:51 EST
<kem> ok, PM said to go ahead with that plan -- add a comment to 710385 that this is fixed by adding the option to turn off surfaces, which was included in 799524, and then close 710385 as a dup of 799524

*** This bug has been marked as a duplicate of bug 799524 ***
Comment 11 Marian Krcmarik 2012-03-06 11:36:12 EST
One would expects that the right way is to fix the issue and even get performance benefits from off-screen surfaces and not to disable it...
Well one may be wrong, This could be done months ago anyway.
Comment 12 David Jaša 2012-03-06 11:46:04 EST
The pre-surface driver didn't support image cache either and performance of surface-enabled cache-less driver regressed compared to it. Therefore the root cause is somewhere else and closing this bug is the best way to make the it backfire on us later.

Reopening and un-marking as dupe based on reasons stated above.

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