Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: replacement slowdown

On Apr 22,  7:23pm, Clint Adams wrote:
} ${(f)"$(</tmp/blah)"//,/x}
} is much slower (23 secs vs. 0.8 secs) in 4.2.2 than it was in 4.2.1

This coincides with the change to introduce the "gsu" structure for
storing functions that perform the get/set/unset of parameters, and
to the addition of the gettimeofday() call in zfork().

Also to the change from times() to getrusage() for timing child jobs,
and to some changes in pattern matching to handle metafied strings

+       * 20522: Src/glob.c, Test/D02glob.ztst: must-match optimisation
+       was broken for pattern substitutions in parameters.

+       * 20500: Misc/globtests, Src/glob.c, Src/pattern.c, Src/zsh.h,
+       Src/Zle/complist.c, Test/D02glob.ztst: Use unmetafied strings
+       in patterns more;

+       * 20490: Src/pattern.c, Src/zsh.h: use lengths for test strings in
+       patterns instead of null termination.

Any or all of those could be contributing to slowness in the example you
gave.  Someone will have to run both versions through a profiler.

BTW, did you check that both builds used the same compiler optimization

Messages sorted by: Reverse Date, Date, Thread, Author