[Pixman] [PATCH 0/2] 7-bit bilinear interpolation precision

Siarhei Siamashka siarhei.siamashka at gmail.com
Mon Jun 25 16:44:01 PDT 2012


These are the test patches for switching to 7-bit bilinear
interpolation precisions. The first patch makes bilinear precision
configurable. The second patch tweaks SSE2 bilinear scaler for better
performance using PMADDWD instruction. Both should be applied after:
    http://lists.freedesktop.org/archives/pixman/2012-June/002074.html

Compared to pixman-0.26.0, bilinear src_8888_8888 operation
becomes almost 1.8x faster on Core i7. The firefox-fishtank trace
gets ~30% speedup, which should help a bit with:
    http://lists.freedesktop.org/archives/pixman/2012-May/001942.html
Also 7-bit bilinear interpolation precision still allows a nice SSSE3
optimization, which can be implemented later to get even more speed.

But the patches need a lot more testing on different hardware.

Siarhei Siamashka (2):
  Bilinear interpolation precision is now configurable at compile time
  sse2: faster bilinear scaling with 7-bit precision (use
    _mm_madd_epi16)

 pixman/pixman-arm-neon-asm-bilinear.S |  119 ++++++++++++------------
 pixman/pixman-arm-neon-asm.S          |  159 +++++++++++++++++----------------
 pixman/pixman-bits-image.c            |   16 ++--
 pixman/pixman-inlines.h               |   37 ++++++---
 pixman/pixman-mips-dspr2-asm.S        |    9 ++-
 pixman/pixman-private.h               |    8 ++
 pixman/pixman-sse2.c                  |   42 ++++++---
 test/affine-test.c                    |   10 ++-
 test/scaling-test.c                   |   10 ++-
 9 files changed, 236 insertions(+), 174 deletions(-)

-- 
1.7.3.4



More information about the Pixman mailing list