[cairo] SSE support in pixman

André Tupinambá andrelrt at gmail.com
Mon Mar 10 19:20:14 PDT 2008


Hi everyone,

I just subscribe this mailing list and saw some archives about SSE(2)
optimization in pixman library. Are this (sub)project running?

I'm studing the pixman some days and I think that I can help too. So I
wrote a proof of concept changing the fbCompositeSrc_8888x8888mmx to
use SSE2 instructions.

In attachment there are the patch and some cairo-perf's results. I
don't know much about the autoconf tool so to compile the code I
needed to run the configure like this:

CFLAGS=-msse2 ./configure

And them change the config.h file to include this:

#define USE_SSE 1

The firsts tests results are REALLY good, but I'm not sure that's
works fine and not introduce some bad pixels in the result images. The
perf was runned using:

taskset 2 ./cairo-perf -i 500 paint_image_rgba_over > perf-sse2-run1

Best Regards

André Tupinambá

PS: If you saw anything weird in my English, please forgive me. I'm
from Brazil and English ain't my first language. Well, the comments
are LGPL too, fell free to fix them :)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: perf-mmx-run1
Type: application/octet-stream
Size: 1205 bytes
Desc: not available
Url : http://lists.cairographics.org/archives/cairo/attachments/20080310/05b1c2d1/attachment-0004.obj 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: perf-mmx-run2
Type: application/octet-stream
Size: 1205 bytes
Desc: not available
Url : http://lists.cairographics.org/archives/cairo/attachments/20080310/05b1c2d1/attachment-0005.obj 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: perf-sse2-run1
Type: application/octet-stream
Size: 1205 bytes
Desc: not available
Url : http://lists.cairographics.org/archives/cairo/attachments/20080310/05b1c2d1/attachment-0006.obj 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: perf-sse2-run2
Type: application/octet-stream
Size: 1205 bytes
Desc: not available
Url : http://lists.cairographics.org/archives/cairo/attachments/20080310/05b1c2d1/attachment-0007.obj 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pixman-mmx.c.patch
Type: text/x-patch
Size: 5855 bytes
Desc: not available
Url : http://lists.cairographics.org/archives/cairo/attachments/20080310/05b1c2d1/attachment-0001.bin 


More information about the cairo mailing list