hello,
I am using the easytag plugin [0] to syntax highlight tags in my files.
My tag database is rather large, so the syntax highlight regrex lines are
about 80.000 lines long (which easytag splits into 4 smaller chunks).
This worked fine in vim 7.3 with no noticeable impact on interactive
performance.

Since I upgraded to 7.4027 vim is pinned to 100% cpu usage and so laggy
when scrolling it becomes unusuable.
E.g. see this example with easytag installed (very easy with pathogen):

wget ftp://ftp.eso.org/pub/dfs/pipelines/libraries/cpl/cpl-6.3.1.tar.gz
tar xfz cpl-6.3.1.tar.gz
cd cpl-6.3.1/
vim +"UpdateTags -R ." +q
time vim ./cplcore/cpl_column.c +HighlightTags +HighlightTags
+HighlightTags +HighlightTags +500 +100 +500 +100 +500  +q


with vim 7.3.547
real    0m1.582s
user    0m1.260s
sys    0m0.060s

with vim 7.4.027
real    0m4.600s
user    0m2.416s
sys    0m1.748s

notice the high system time usage, thats all from page faulting. (ubuntu
13.10, 3.80 kernel)

This seems to be related to the new regex engine.
Looking at the profile it speeds excessive amounts of time page faulting
due to the copy_sub in add_state [1]

Is easytag just doing the highlight regex wrong or is this a issue in the
new engine?
the regex used looks like this:

syntax match cFunctionTag
/\C\<\%(cpl_column_get_mean_complex\|cx_tree_previous\|cpl_table_copy_data_int\|cpl_table_get_column_format\|cx_map_erase_range\|cpl_table_divide_columns
....

Regards,
Julian Taylor

[0] https://github.com/xolox
[1] top of the perf profile:
+  19,61%     vim  vim.gnome               [.] nfa_regexec_both
+  15,01%     vim  [kernel.kallsyms]       [k] clear_page_c
+  11,65%     vim  vim.gnome               [.] addstate
+   5,29%     vim  [kernel.kallsyms]       [k] page_fault

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Raspunde prin e-mail lui