Bug 59044

Summary: [UXA IVB bisected] gnome-system-monitor perforamnce reduce by ~40%
Product: xorg Reporter: ye.tian <yex.tian>
Component: Driver/intelAssignee: Chris Wilson <chris>
Status: CLOSED FIXED QA Contact: Intel GFX Bugs mailing list <intel-gfx-bugs>
Severity: major    
Priority: low    
Version: git   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description ye.tian 2013-01-05 07:24:12 UTC
System Environment:       
----------------------------------------------
Platform:IVB
Mesa:  (9.0)0ac90296a092f846647812318913b0e492775f31
Cairo: (master)9dde964553f74ccbc037b13ca83d0abb46adb194
Kernel:(drm-intel-fixes) da494d7ca5e0a1afca3480826b5060e15c951e80

Bug detailed description:
----------------------------------------------
Cairo (benchmark/full)gnome-system-monitor performance reduced by ~40% on IVB
It's cairo regression. By bisected, show that 5bc1b1f6a is the first bad commit.

commit 5bc1b1f6aac108d9a3963352ad774bb4fcd69e28
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Fri Aug 24 17:22:34 2012 +0100

   stroke: Make the incremental trapezoid stroker optionally available again

Performance:
-----------------------------------------------
74941f8 is 5bc1b1 parents commit.
                                74941f8   5bc1b1 
(benchmark)gnome-system-monitor  0.97      1.62

Reproduce steps:
---------------------------------------------
1, xinit&
2, vblank_mode=0 CAIRO_TEST_TARGET=xlib ./cairo-perf-trace ../benchmark/gnome-system-monitor
Comment 1 Chris Wilson 2013-01-05 08:30:29 UTC
Oh that is funny, performance testing using UXA. You might also add that UXA also renders it incorrectly to the list of its faults.
Comment 2 Chris Wilson 2013-01-05 08:31:25 UTC
Adjusting priority to reflect that apparently I am not allowed to fix performance bugs.
Comment 3 ye.tian 2013-01-05 09:21:46 UTC
(In reply to comment #1)
> Oh that is funny, performance testing using UXA. You might also add that UXA
> also renders it incorrectly to the list of its faults.

Hi Chris, could you please tell me how to run cairo-trace without UXA, or give me a standard command?
Comment 4 Chris Wilson 2013-01-05 09:28:05 UTC
To test another X server, you have to run an alternative X server. To control which backend is being tested, use CAIRO_TEST_TARGET.
Comment 5 Gordon Jin 2013-01-06 05:58:20 UTC
(In reply to comment #2)
> Adjusting priority to reflect that apparently I am not allowed to fix
> performance bugs.

I don't understand. So who should own this bug?
And I don't feel this is a good reason to demote the priority.
Comment 6 Chris Wilson 2013-01-06 10:01:10 UTC
The bug is in the implementation of UXA. Given that the changes speeds up the accelerated drivers, cairo will optimise for them not a badly designed driver.
Comment 7 Gordon Jin 2013-01-09 04:19:26 UTC
so will you consider it won't ix?
Comment 8 Chris Wilson 2013-01-09 10:05:39 UTC
Quite the opposite. The fix has been floating around upstream for over a year.
Comment 9 ye.tian 2015-02-06 06:31:40 UTC
verified it.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.