https://bugzilla.wikimedia.org/show_bug.cgi?id=53241

--- Comment #15 from C. Scott Ananian <[email protected]> ---
OK.  I suggest moving to es6-shim.  The codebase is much simpler.

Things left to do:

a) profile our code and figure out why we are creating so many different Set
objects during a parserTests run.  Possible we can hoist many of them out (into
mediawiki.wikitext.constants.js) which would greatly reduce the speed penalty
from using es6-shim.

b) (possibly) hack es6-shim to lazy-initialize the Map objects.  Only create
the backing linked-list if non-string keys are ever used.  [gwicke suggests
that numeric keys could also be sped up, by prefixing string keys with '$'
instead of testing against '__proto__']

c) (possibly) add a FastStringSet to JSUtils (along the lines of
https://gerrit.wikimedia.org/r/88148 ).

c2) figure out what the hotspots are for Set.has() -- possibly only a few sites
actually need to use FastStringSet.

d) subbu has also requested re-doing some of the performance comparisons above
using a single (large) article as a benchmark, instead of ParserTests.  This
would help determine whether the performance loss was significant in real use
(as opposed to just in parserTests).

Arlo: I'm moving on to other tasks right now.  Go ahead and tackle any of the
above that you like.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
Wikibugs-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to