[Pixman] [PATCH 0/3] ARM NEON optimizations for better results in cairo-perf benchmarks

Siarhei Siamashka siarhei.siamashka at gmail.com
Fri Feb 26 10:27:03 PST 2010


On Thursday 25 February 2010, Siarhei Siamashka wrote:
> On Wednesday 24 February 2010, Soeren Sandmann wrote:
> > Siarhei Siamashka <siarhei.siamashka at gmail.com> writes:
> > > The following patches add some new 32bpp ARM NEON optimized fast paths
> > > for the operations which are heavily used in the standard cairo-perf
> > > benchmarks. Profiling statistics has been posted earlier:
> > > http://people.freedesktop.org/~siamashka/files/20100216/pixman-0.17.6
> >
> > It looks like most of these could be enabled in the ABGR case as
> > well. The pixbuf fast path also looks like it could be used as in the
> > [rpixbuf, a8b8g8r8] case.
>
> Yes, you are right. I always keep forgetting about ABGR formats :)

Here are the updated patches:
http://cgit.freedesktop.org/~siamashka/pixman/log/?h=neon-cairo-perf-speedup-v2

Changes since the previous submission:
1. Added fast path table entries for ABGR formats
2. A bit faster 'neon_composite_over_n_8888_8888_ca' (making use of the
fact that alpha channel is the same for both updated source and mask
in 'combine_mask_ca' output)

Note: an extra table entry for OVER_x888_8888 operation is needed
because 'pixman_optimize_operator' can't reduce OVER operator to SRC. When
repeat is set to PIXMAN_REPEAT_NONE, function '_pixman_image_is_opaque'
returns FALSE. It could be easily fixed by additionally checking whether the
region to be composited fits source image completely, and not discriminating
PIXMAN_REPEAT_NONE in this case.

I'm going to push these patches to master in a few days unless there are more
comments/objections.

-- 
Best regards,
Siarhei Siamashka


More information about the Pixman mailing list