Updates:
        Summary: Performance issues

Comment #1 on issue 357 by reiner.p...@gmail.com: Performance issues
http://code.google.com/p/yi-editor/issues/detail?id=357

This commit[1] fixes the problem described as well as I can so far, although I believe performance could still be significantly improved.

Some of the performance issues appear not to be pango-related, so I'm changing the title.

Some tricks to exaggerate performance problems:

* open many yi windows all pointing to the same buffer (so that editing one buffer modifies all buffers) * try holding a key down to trigger insertion and watch to see whether characters insert smoothly or (in the extreme case) not at all until releasing the key
 * try holding a scroll key down and see if the cursor scrolls smoothly
* use modes with syntax highlighting, and possible with detailed parsing (eg precise haskell)

Some possible avenues to improve performance:

* construction the attribute list as well as calls to PangoLayout could be run in separate threads for different buffers. Although one must be careful to avoid threading issues in gtk. * a lot of time (5-10ms on my computer) is spent constructing the attribute list for syntax highlighting. Perhaps explore a packed representation rather than lists? Perhaps cache the attribute list alongside the parser cache, so multiple views of one buffer can share the attribute list?

[1] https://github.com/yi-editor/yi/commit/8b81ca33b291149dbc15f31db572e0b9d2782811

--
Yi development mailing list
yi-devel@googlegroups.com
http://groups.google.com/group/yi-devel

Reply via email to