[cairo] More info about fbCompositeCopyAreammx

Frédéric Plourde frederic.plourde at polymtl.ca
Thu Mar 27 11:51:08 PDT 2008

Hi Vlad !

Remember that issue you brought up about subimage_copy with 512X512 
which made things slower ?
I've got some more news about it...

Since Soeren questionned the precision of giving perf results with only 
a small number of iterations, I've used a minimum of 100 iterations on 
my perf tests.
Take a look at the newest results about "subimage_copy"...


First group of results shows NO GAIN between  pre-mmx and post-mmx versions
except for the 512X512 case alone, which shows 58% speedup... that's weird

The second group of results shows perf GAINS between :  before applying 
my patch and after applying my "fbCompositeCopyArea" patch
But these gains, as you noticed earlier, seem to fade out as the image 
scales up.

I'll investigate some more about that, but for now, I think the patch 
"pixman_OPT_MMX_addFastPath_to_fbCompositeCopyAreammx.patch" is worth it.

Vladimir Vukicevic a écrit :
> On Mar 10, 2008, at 12:21 PM, Frederic Plourde wrote:
>> Here's a speedup chart that supports this optimization :
>> http://pastebin.mozilla.org/362713
>> A mean perf gain of 1.5X was observed for the image-rgb cases instead 
>> of 0.99 as
>> seen before this optim.
> There's something weird here, everything shows a speedup except:
> before patch:
> image-rgb subimage_copy-512    0.303ms  (nommx) -> 0.321ms (mmx)  -- 
> 94% speed
> after patch:
> image-rgb subimage_copy-512    0.302ms  (nommx) -> 0.347ms (mmx)  -- 
> 87% speed
> So turning MMX on for the 512x512 case made things slower, and the 
> patch made it even slower... that sounds really weird, I would expect 
> a bigger speedup as the image size goes up.  It would be worth trying 
> 1024x1024 and 2048x2048 to see whether there is an odd trend here, and 
> even then to figuring out why the 512x512 case slows down.
>     - Vlad

More information about the cairo mailing list