Title: [120998] trunk/PerformanceTests
Revision
120998
Author
[email protected]
Date
2012-06-21 19:50:52 -0700 (Thu, 21 Jun 2012)

Log Message

Add a perf-test for innerHTML setter for a large DOM tree
https://bugs.webkit.org/show_bug.cgi?id=89723

Reviewed by Ryosuke Niwa.

We want a benchmark for innerHTML setter for the following reason:

- innerHTML setter is widely used in the real world.
- I am planning to optimize innerHTML setter in the near future.
- I want to use the innerHTML setter benchmark for the patch of bug 88834.

Performance results in my Linux desktop:

RESULT Parser: innerHTML-setter= 289.782649995 runs/s
median= 290.046269741 runs/s, stdev= 1.06575112224 runs/s, min= 286.831812256 runs/s, max= 291.005291005 runs/s

RESULT Parser: innerHTML-setter= 289.020706132 runs/s
median= 289.093298292 runs/s, stdev= 0.985203313093 runs/s, min= 286.831812256 runs/s, max= 290.620871863 runs/s

RESULT Parser: innerHTML-setter= 288.912051701 runs/s
median= 291.005291005 runs/s, stdev= 3.65241325588 runs/s, min= 283.505154639 runs/s, max= 292.553191489 runs/s

RESULT Parser: innerHTML-setter= 288.644186666 runs/s
median= 288.713910761 runs/s, stdev= 1.31889053717 runs/s, min= 286.085825748 runs/s, max= 290.620871863 runs/s

RESULT Parser: innerHTML-setter= 288.698714577 runs/s
median= 288.713910761 runs/s, stdev= 1.03938198202 runs/s, min= 286.458333333 runs/s, max= 290.237467018 runs/s

* Parser/innerHTML-setter.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/PerformanceTests/ChangeLog (120997 => 120998)


--- trunk/PerformanceTests/ChangeLog	2012-06-22 02:47:15 UTC (rev 120997)
+++ trunk/PerformanceTests/ChangeLog	2012-06-22 02:50:52 UTC (rev 120998)
@@ -1,3 +1,35 @@
+2012-06-21  Kentaro Hara  <[email protected]>
+
+        Add a perf-test for innerHTML setter for a large DOM tree
+        https://bugs.webkit.org/show_bug.cgi?id=89723
+
+        Reviewed by Ryosuke Niwa.
+
+        We want a benchmark for innerHTML setter for the following reason:
+
+        - innerHTML setter is widely used in the real world.
+        - I am planning to optimize innerHTML setter in the near future.
+        - I want to use the innerHTML setter benchmark for the patch of bug 88834.
+
+        Performance results in my Linux desktop:
+
+        RESULT Parser: innerHTML-setter= 289.782649995 runs/s
+        median= 290.046269741 runs/s, stdev= 1.06575112224 runs/s, min= 286.831812256 runs/s, max= 291.005291005 runs/s
+
+        RESULT Parser: innerHTML-setter= 289.020706132 runs/s
+        median= 289.093298292 runs/s, stdev= 0.985203313093 runs/s, min= 286.831812256 runs/s, max= 290.620871863 runs/s
+
+        RESULT Parser: innerHTML-setter= 288.912051701 runs/s
+        median= 291.005291005 runs/s, stdev= 3.65241325588 runs/s, min= 283.505154639 runs/s, max= 292.553191489 runs/s
+
+        RESULT Parser: innerHTML-setter= 288.644186666 runs/s
+        median= 288.713910761 runs/s, stdev= 1.31889053717 runs/s, min= 286.085825748 runs/s, max= 290.620871863 runs/s
+
+        RESULT Parser: innerHTML-setter= 288.698714577 runs/s
+        median= 288.713910761 runs/s, stdev= 1.03938198202 runs/s, min= 286.458333333 runs/s, max= 290.237467018 runs/s
+
+        * Parser/innerHTML-setter.html: Added.
+
 2012-06-20  Philip Rogers  <[email protected]>
 
         Add a performance test for paths in SVG

Added: trunk/PerformanceTests/Parser/innerHTML-setter.html (0 => 120998)


--- trunk/PerformanceTests/Parser/innerHTML-setter.html	                        (rev 0)
+++ trunk/PerformanceTests/Parser/innerHTML-setter.html	2012-06-22 02:50:52 UTC (rev 120998)
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html>
+<body>
+<script src=""
+<script>
+function generateBinDOMTree(depth) {
+  return depth == 0 ? "text" : ("<div>" + generateBinDOMTree(depth - 1) + generateBinDOMTree(depth - 1) + "</div>");
+}
+
+var div = document.createElement("div");
+document.body.appendChild(div);
+var tree = generateBinDOMTree(10);
+
+PerfTestRunner.runPerSecond({
+    description: "This benchmark tests innerHTML setter for a large DOM tree",
+    run: function() {
+        div.innerHTML = tree;
+        div.innerHTML = "";
+    }});
+</script>
+</body>
+</html>
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to