Phil Boswell wrote:
Just to double-check (3 sig-figs since that's all
we've been given in some
cases):
PHP: 97.8 lines/s
wikidiff: 2640 lines/s
wikidiff2: 87000 lines/s
Strewth! Unless there's something devastatingly wrong with your coding, this
would seem likely to make a huge impact on performance.
Is this currently a serious bottleneck?
What is the next bottleneck that needs consideration?
It won't have a big impact on average performance. Even with the PHP algorithm, diffs
take only 10ms
each on average, and they're not a particularly common operation. The main motivation
for doing it
was robustness. Particularly large or pathological diffs can run PHP over its memory
limit, or may
require minutes to generate. That's kind of annoying. Vandals use this to annoy
patrollers, and it's
a potential DoS vector.
So what I'm interested in is worst-case performance. This extension seems to fare
fairly well on
test input that makes PHP choke.
-- Tim Starling