[Pixman] [PATCH 2/2] Delete simple repeat code

Siarhei Siamashka siarhei.siamashka at gmail.com
Tue Dec 14 09:48:07 PST 2010


On Thursday 04 November 2010 03:10:38 Siarhei Siamashka wrote:
> On Wednesday 29 September 2010 15:40:33 Søren Sandmann wrote:
> > This was supposedly an optimization, but it has pathological cases
> > where it definitely isn't. For example it has terrible memory access
> > patterns when called with a 1 x n image. With small images in general,
> > it will do lots and lots of modulus operations.
> > 
> > Since no one has ever measure whether it actually is an improvement,
> > and since it is doing the repeating at the wrong the stage in the
> > pipeline, just delete it.
> 
> As it turns out, non-scaled images having NORMAL repeat (tiled pictures)
> are actually used occasionally (typically with SRC operator). And removing
> simple repeat code caused ~4x performance regression in these cases. Looks
> like a new fast path is needed to solve the problem.

Just an update to this. I tried to check whether this is easily solvable, but
looks like there are a handful of missing fast paths for NORMAL repeat (they
primarily show up when browsing various pages). Just doing it in a simple and
straightforward way by adding all of them as new fast path functions may
cause more redundancy in the pixman source code. Modifying the existing
scaled fast paths to accept non-scaled cases also works, but it does not
provide the best performance. For now I just reverted this patch in my
pixman tree to workaround the problem and buy some more time to think
about how it can be solved.

-- 
Best regards,
Siarhei Siamashka
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.freedesktop.org/archives/pixman/attachments/20101214/49a36434/attachment.pgp>


More information about the Pixman mailing list