[Webkit-unassigned] [Bug 13115] REGRESSION: 1000% performance regression in DOM access by index, which was already slow

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sat Apr 21 10:06:03 PDT 2007


http://bugs.webkit.org/show_bug.cgi?id=13115


ap at webkit.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|webkit-                     |ap at webkit.org
                   |unassigned at lists.webkit.org |
             Status|NEW                         |ASSIGNED
  Attachment #14123|                            |review?
               Flag|                            |




------- Comment #7 from ap at webkit.org  2007-04-21 10:06 PDT -------
Created an attachment (id=14123)
 --> (http://bugs.webkit.org/attachment.cgi?id=14123&action=view)
proposed fix

This patch makes NodeLists use a shared cache, similar to the one
HTMLCollections use. With it, ChildNodeList::length() is no longer in Shark
profiles.

Above comments indicate that different people get different timings on these
tests. This is apparently due to them being entirely memory-bound - over 90% of
time is spent on a single instruction, "lwz r3,20(r3)" (which is what
Node::nextSibling() compiles to).

On my machine, the "insert" time on Hixie's test went down from 26 seconds to 7
seconds on TOT, while shipping Safari result is under 6 seconds. Believe it or
not, David's reduction takes 64 seconds with shipping Safari, and 7 seconds on
TOT with this patch (I haven't measured bare TOT). Go figure.


-- 
Configure bugmail: http://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
You are the assignee for the bug, or are watching the assignee.



More information about the webkit-unassigned mailing list