[kde-edu]: KTurtle 4 performance

Jeff Shipley jshipley at jshipley.homelinux.net
Fri Jan 18 22:34:42 CET 2008

> Jeff Shipley wrote:
>> Most stuff seems to run fairly quickly, I can draw a huge square spiral
>> covering the entire canvas in a few seconds.
>> Speeding everything up (at least for the full-speed execution mode) is
>> going to be a priority for me for the 4.1 release.
> I think you will find out that a large part of the slowdown (specially
> if you have thousands of lines drawn) might be caused by our current
> approach to graphics. Each line is a new QGV item. This can give us
> several benefits, as we can scale the canvas to fit the size of the
> window like it is now, and antialias will be maintained. The effect is
> that now the "units" of measurement for the canvas are virtual, they do
> not correspond 1:1 to pixels on the image or screen, and this is very
> nice imo. It also enables other features like SVG export, maybe?
> But when you have thousands (or maybe millions) of lines, refreshing can
> be a bit slow. Do you think the slowdown is in drawing, or in
> calculating? I also did not exhausted the possible QGV optimizations
> related to management of dirty rects. These are supposed to improve even
> more with Qt 4.4, and the usage pattern you mentioned for the fractal
> sample seems to match exactly a corner case in QGV performance, outlined
> by Andreas at
> http://labs.trolltech.com/blogs/2008/01/08/accurate-update-regions-for-thin-qgraphicsitems/
> Of course, it might be an issue with the parser and recursion as well, I
> am not sure. Feel free to research this, but let me know if you are
> ready to commit huge architectural changes, as I am planning to
> experiment with a different approach to graphics as well (drawing on a
> fixed canvas size pixmap instead of creating vectorial lines.)
> Regards,
> Mauricio Piacentini
> _______________________________________________
> kde-edu mailing list
> kde-edu at mail.kde.org
> https://mail.kde.org/mailman/listinfo/kde-edu

One other thing I noticed that could be causing some slowdown... when run
from a console, KTurtle 4.0 is printing output statements for every step
while parsing/executing.


More information about the kde-edu mailing list