On 2009-07-31 11:49+0100 Alban Rochel wrote:

[...]

> - QtWidget and ExtQt plot faster (1), especially when plotting x/y
> rectangular filled shapes (2). Example x20c is now *much* faster.

[...]
> (1) - The buffer stores pointers to Qt plot primitives rather than the
> data used to generate them at every plot (e.g QRect* rather than struct
> holding x, y, width and height). I feared that this would consume more
> memory, but this is barely noticeable if at all in the end.
> - Colours are now only stored at colour changes, not associated to every
> primitive any more
> (2) - We used to use pens to draw the rectangles outlines, which is
> wrong as it adds width, and makes drawing much slower
> - Disabling of antialiasing for these primitives, as this could result
> in thin "gaps" between tiles, producing Moire patterns

I have recently been doing some interactive testing, and I have to comment
on the outstanding speed obtained with the new version of qtwidget. Here are
some timing comparisons for example 8, but other examples also show these
type of qualitative results.

softw...@raven> time c/x08c -dev xwin

real    0m0.769s
user    0m0.152s
sys     0m0.072s

softw...@raven> time c/x08c -dev qtwidget

real    0m0.974s
user    0m0.624s
sys     0m0.016s

softw...@raven> time c/x08c -dev xcairo

real    0m3.031s
user    0m1.232s
sys     0m0.084s

I held down the enter key to autorepeat as rapidly as possible through the
various pages of the example in each case so I believe the "real" times are
reliable even though in each case they are substantially larger than the sum
of user + sys time (presumably because of different waits for system
resources required by the three different methods used here for generating
the results).

Focussing just on the real times, the qtwidget speed is outstanding
considering all the extra font rendering and antialiasing work it does to
make nice looking results compared to -dev xwin in roughly the same amount
of time.  -dev xcairo has similar nice looking results as qtwidget, but it
takes roughly three times longer to render the result.  That's interesting,
but I don't think that is a major xcairo concern since I believe developers
should not optimize unless there is an order of magnitude or so to be
gained, and that is clearly not the case here.

I was curious about the speed of qtwidget in the old days and here is
one result I posted to this list in late April.

softw...@raven> time c/x08c -dev qtwidget

real    0m5.423s
user    0m3.432s
sys     0m0.132s

Obviously, there has been more than 5 times improvement in qtwidget speed
since then. Thanks, Alban!

Alan
__________________________
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state implementation
for stellar interiors (freeeos.sf.net); PLplot scientific plotting software
package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of
Linux Links project (loll.sf.net); and the Linux Brochure Project
(lbproject.sf.net).
__________________________

Linux-powered Science
__________________________

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to