On Sat, 2011-01-22 at 06:21 +0100, Kai-Martin Knaak wrote: > Hi. > While working on a fairly large schematic I noticed that panning > in gschem is way less snappy than the same circuit rendered as PDF > in evince or kpdf. There is no benchmarking available. The ratio > seems like 10. While my schematic pans in gschem with 3 to 5 FPS, > it is definitely beyond 30 FPS in the PDF renderers. > Since both applications deal with lines and characters, I'd naively > expect similar performance. Or did I miss something? > > Is there any hope to speed up the gschem GUI? > > ---<)kaimartin(>---
Yes, cairo drawing looks fine and is easy to use, but is not very fast. That is why Peter C. used native OpenGL for PCB. Of course there are various strategies for increasing the speed. One is to draw all to a larger buffer and copy only the visible part to the window on the screen, this may make panning/scrolling very fast, but has overhead in used memory consumption, and zooming will be slower. A good strategy is always to have a bounding box for each element, and to draw only elements when their bounding box overlaps with the visible part on screen. So not rely on cairo's clipping. One may consider buffering strategies, i.e. buffer each symbol, buffer part of the visible screen. For me that worked not very fine. You may try to do profiling cairo's drawing, that is what is suggested from cairo developers. I still have to learn how to do that. Or you may consider employing cairo's GL backend. You may look at the cairo list, i.e http://permalink.gmane.org/gmane.comp.lib.cairo/20970 Please let us know if you have first results. Best regards Stefan Salewski _______________________________________________ geda-user mailing list [email protected] http://www.seul.org/cgi-bin/mailman/listinfo/geda-user

