[GRASS-dev] wxpython gui: speed of display

Glynn Clements glynn at gclements.plus.com
Wed Aug 16 21:45:53 EDT 2006


Moritz Lennert wrote:

> > It's more likely that most of the time is taken by d.vect. Try running
> > d.vect directly (using the PNG driver), and timing that. Also, try
> > using GRASS_RENDER_IMMEDIATE=TRUE to see if that makes a noticeable
> > difference.
> 
> It halves the rendering time:

That indicates that simply passing the vector data between d.vect and
the PNG driver is a significant overhead.

[All the more reason for the wxPython GUI (and gis.m) to stop using
the PNG driver and start using immediate rendering (the other reason
being simplicity; you don't have to manage a separate driver
process).]

Beyond that, immediate rendering makes it feasible to profile d.vect
to find out where the CPU cycles are being spent (this isn't practical
when the rendering process is split between d.vect, the PNG driver,
and the kernel).

If you want to try that, you need to add -pg to CFLAGS and LDFLAGS,
and use --disable shared (also, there are problems with lib/init; that
needs to be compiled without -pg). Running any program will produce a
file named gmon.out, which can be analysed using gprof.

-- 
Glynn Clements <glynn at gclements.plus.com>




More information about the grass-dev mailing list