[Pixman] [PATCH 0/3] BILINEAR->NEAREST filter reduction optimization

Siarhei Siamashka siarhei.siamashka at gmail.com
Sun May 22 14:15:12 PDT 2011


From: Siarhei Siamashka <siarhei.siamashka at nokia.com>

Can be used as a fix for:
  https://bugs.freedesktop.org/show_bug.cgi?id=37421
But also has some potential for avoiding unnecessary performance
hits for simple rotation, simple translation and possibly even
downscaling with integer scale factors (this is not so certain)
due to equivalent substitution of BILINEAR filter with NEAREST.

As it turns out, these changes are also likely exposing older bugs,
potentially happening when using fixed point values which are close
to 32K limit (this is something to be investigated later). Also
there are likely some bugs when handling non-affine transforms which
may show up as the use of uninitialized values in valgrind (if bit
flipping part of the affine-test is also allowed to touch the
lowest row of the transformation matrix).

The same patches are also available here:
  http://cgit.freedesktop.org/~siamashka/pixman/log/?h=sent/20110522-unscaled-bilinear-fix


Siarhei Siamashka (3):
  test: better coverage for BILINEAR->NEAREST filter optimization
  Optimize BILINEAR filter to NEAREST for identity transforms
  BILINEAR->NEAREST filter optimization for simple rotation and
    translation

 pixman/pixman-bits-image.c |   22 +++---------------
 pixman/pixman-image.c      |   53 +++++++++++++++++++++++++++++++++++++++++--
 pixman/pixman-private.h    |    4 +-
 pixman/pixman.c            |   40 +++++++++++++++------------------
 test/affine-test.c         |   36 ++++++++++++++++++++++++-----
 5 files changed, 104 insertions(+), 51 deletions(-)

-- 
1.7.3.4



More information about the Pixman mailing list