[cairo-bugs] [Bug 10151] Add mediaLib support

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Nov 28 22:57:47 PST 2007


------- Comment #19 from brian.cameron at sun.com  2007-11-28 22:57 PST -------
Created an attachment (id=12820)
 --> (http://bugs.freedesktop.org/attachment.cgi?id=12820&action=view)
comparing two runs

Thanks for the comments.  Note that I am using Solaris x86, which has RENDER
support.  This bug is not related to the issues with running Solaris on Sparc,
where Xrender is not available (due to using the Xsun Xserver on Sparc).  So
Xrender shouldn't be a factor with any differences discussed on this report.

I think the differences in the slowdown's are red herrings, and perhaps due to
something odd in how the Xserver behaves on Solaris.  I ran two tests, both
with mediaLib enabled and am attaching this. 


The attached comparison is checking cairo compiled without mediaLib in both

 xlib-rgba      fill_solid_rgb_source-256
    19.94 0.50% ->  19.96 64.96%:  7.68x speedup
 xlib-rgba paint-with-alpha_solid_rgb_source-256
    42.20 0.36% ->  42.24 64.99%:  7.66x speedup

 xlib-rgb   paint_similar_rgba_source-256
    0.28 84.96% ->   1.50 1.12%:  6.98x slowdown
 xlib-rgba      fill_solid_rgb_source-128
    5.86 60.16% ->   5.95 1.64%:  5.92x slowdown


The last report I shared with you shows the following:

 xlib-rgba paint-with-alpha_solid_rgb_source-512
     167.66 0.22% -> 167.70 65.14%:  7.66x speedup
 xlib-rgba   paint_similar_rgb_source-256
     1.55 3.52% ->   0.37 79.66%:  5.95x speedup

 xlib-rgba   paint_similar_rgb_source-512
     0.80 84.14% ->   4.93 1.46%:  6.27x slowdown
 xlib-rgba    stroke_solid_rgb_source-128
     9.39 52.67% ->   9.47 1.88%:  4.02x slowdown


I also ran a 3rd comparison and got these results:

 xlib-rgba paint-with-alpha_solid_rgb_source-256
     42.20 0.36% ->  42.18 64.69%:  7.60x speedup
 xlib-rgba   paint_similar_rgb_source-256
     1.50 2.79% ->   0.30 80.80%:  6.07x speedup

 xlib-rgb   paint_similar_rgba_source-256
     0.28 84.96% ->   1.49 1.68%:  6.93x slowdown
 xlib-rgba      fill_solid_rgb_source-128
     5.86 60.16% ->   5.78 1.62%:  5.79x slowdown


Note the following

- In all 3 cases there are two functions that are faster and two
  functions that are slower by roughly the same amount.
- Note that if the test is "xlib-rgb" then the functions are "*rgba*"
  while if the test is "xlib-rgba", then the functions are "*rgb*" (not
- Note that while the functions in the 3 examples tend to be the
  same subset of functions, they aren't the same for each test. 


So, I think the changes in these xlib-rgb/xlib-rgba functions are
note related to the patch.  My guess is there is some Xserver behavior
that perhaps causes this?  Like perhaps the Xserver skips frames in
some situations when you test it hard, causing some tests to vary
like this?

Also the fact that the functions that are patched to use MEDIALIB are
not even used in the xlib-rgb/xlib-rgba case.  So, I think we can
ignore the xlib-rgb/xlib-rgba functions as being an artifact of 
something not related to this patch.   

The reports do show, however, that the functions that do use MEDIALIB
show consistant speed-up, some of them fairly significant.  So I think
it is okay to accept this patch.

Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.

More information about the cairo-bugs mailing list