[GRASS5] [bug #3087] (grass) high cpu usage

Glynn Clements glynn at gclements.plus.com
Sun Apr 3 23:33:32 EDT 2005


Hamish wrote:

> > >> some commands, like d.zoom, d.what.rast or d.what.vect using about
> > >> 50% or more of cpu resources. there is no problem with this in
> > >> grass54. my cpu is pentium 4 2.8ghz.
> > 
> > > This is a known problem with all programs which use the mouse.
> ..
> > Yeah, various people have complained about this, but it has been
> > neither fixed nor reverted.
> > 
> > AFAIK, it's only required for the newer v.digit and d.what.vect, due
> > to the "form" library. The problem with the original implementation
> > was that the program would block while waiting for a mouse press.
> > 
> > A better solution would have been to leave the original (working)
> > mouse handling untouched and to have implemented the "enhanced"
> > version as separate operations. That way, only the programs which
> > actually need the new version would cause problems.
> 
> ... but that doesn't actually solve the problem, it just contains it
> better.
> 
> How to more forward on this?
> 
> Do we move backwards and start from scratch with a better design for
> v.digit et al. or do we try and work around the current state of
> affairs? (given the resources at hand and the fact the form library
> author doesn't see it as the future)

1. Make v.digit a standalone program which doesn't use XDRIVER.
2. Remove the form support from d.what.vect.
3. Revert the R_get_location_with_* to their original forms.

The display driver API is inherently unsuitable for programs which
need to multiplex mouse input with other input sources.

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




More information about the grass-dev mailing list