On Sun, Oct 16, 2011 at 10:03 PM, Terry Brown <[email protected]> wrote:

> It had always scanned the 38 files in about 10 seconds, and I was
> vaguely aware most of that time was spend in building the view tree,
> i.e. p.insertAsLastChild() and p.h=, p.b=, etc.

Thanks for pointing this out.  The difference is striking.

vnode methods are faster because they don't update dirty bits in
ancestor @<file> nodes.  Compare p.setDirty with v.setDirty.  You
could say the culprit is p.setAllAncestorAtFileNodesDirty.

This is a hidden performance gotcha.  It doesn't usually matter
because p.setDirty isn't called over and over again, but in your case
it is.

Even if you wanted to set dirty bits "properly", that is, in ancestor
@<file> nodes, a post pass could probably do so much more quickly than
calling p.setDirty repeatedly.  Just make sure to avoid
p.setAllAncestorAtFileNodesDirty.

Edward

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/leo-editor?hl=en.

Reply via email to