Performance tests
Boudewijn Rempt
boud at valdyas.org
Wed Jan 19 09:51:00 CET 2005
I've run the performance tests (in a completely unscientific way) for bitblt,
fill (but not floodfill) and pixel/setpixel both for the new autolayers code
and for the old code by Patrick Julien. I've attached the kspread sheet in
html format; there are a number of interesting things to be learned here.
* There's somehow more variability in the performance of the autolayers code
than there was with the old code -- this may just be a result of the
unscientific test environment (i.e., a laptop that heats up pretty quickly.)
* blitting has become four to forty times slower -- I guess this means that we
should not feed single pixels to the colour strategies, but tile-size chunks
of data.
* (rectangluar) Filling is very slow, too -- this is noted in the
tileddatamanager code; we shouldn't use iterators here, but just create tiles
in the new colour and save the old tiles for undo.
* Reading pixels is 3 to 7 times faster.
* Writing single pixels is 3 times slower: we should try to do a single pixel
write without creating an iterator. Single pixel writes don't need undo
anyway.
Anyway, there's a lot of scope for optimizing here. And given that every cycle
we spend getting/writing pixels is a cycle we cannot use for fun stuff like
brush effects, paint simulation or filtering, it would repay the effort.
By the way: Casper, do you have any idea about the thread-safety of the new
code? I've managed to get the wet & sticky code working, and I'd like to
implement the paint engine as a visitor running in its own thread. A kind of
permanently running filter. (Which would be a cool thing in its own to have.)
--
Boudewijn Rempt
http://www.valdyas.org/fading/index.cgi
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.kde.org/pipermail/kimageshop/attachments/20050119/d1bb9589/kritaperfreport2-0001.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/kimageshop/attachments/20050119/d1bb9589/attachment-0001.pgp
More information about the kimageshop
mailing list