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

--- Comment #7 from Tim Starling <[email protected]> ---
(In reply to comment #5)
> Even further suggestion from Tim: make the IVStore use a binary search tree,
> where the nodes are something like { index: number, value: Object } and the
> comparison operates on the objects, something similar to oo.compare() but
> returns < or >. This requires an ordering on the keys. We could do alphabetic
> order like in keySortReplacer, but it would be more efficient to have the
> ve.dm.Annotation object return an ordering on the keys. Or something. This is
> an incomplete thought and requires experimentation.

The point of this would be to reduce the memory usage of IVStore by eliminating
the duplication caused by using the JSON as a key, and also to reduce the CPU
overhead of ve.getHash(). But note that neither of these things are confirmed
as performance issues in the profiling I have done so far.

In any case, comparison of store indexes would obviously be faster than binary
search followed by value comparison. So I think index comparison should be the
priority, of the ideas discussed here, assuming it can be implemented in such a
way that pressing backspace on plain text will predominantly hit index
comparison rather than value comparison. After that is implemented, we can do
more profiling and decide whether the use of ve.getHash() is a problem worthy
of significant development time.

-- 
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