You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@shindig.apache.org by lr...@apache.org on 2008/10/09 03:52:29 UTC

svn commit: r703041 - /incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/parse/ParseTreeSerializerTest.java

Author: lryan
Date: Wed Oct  8 18:52:28 2008
New Revision: 703041

URL: http://svn.apache.org/viewvc?rev=703041&view=rev
Log:
Updated perf test of Caja parser to include warmup runs and a delay to enable more effective JIT execution.

Modified:
    incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/parse/ParseTreeSerializerTest.java

Modified: incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/parse/ParseTreeSerializerTest.java
URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/parse/ParseTreeSerializerTest.java?rev=703041&r1=703040&r2=703041&view=diff
==============================================================================
--- incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/parse/ParseTreeSerializerTest.java (original)
+++ incubator/shindig/trunk/java/gadgets/src/test/java/org/apache/shindig/gadgets/parse/ParseTreeSerializerTest.java Wed Oct  8 18:52:28 2008
@@ -71,16 +71,31 @@
     // Caja parser.
     System.out.println("Parsing contents of '" + fileArg + "' " + numRuns + " times...");
     CajaHtmlParser parser = new CajaHtmlParser();
-    long parseStart = System.currentTimeMillis();
+
+    // Some warmup runs with wait. Enough iterations to trigger the HIT
+    // Wait to allow it to swap execution paths etc...
     List<ParsedHtmlNode> nodes = null;
+    for (int i = 0; i < 10; ++i) {
+      nodes = parser.parse(inputData);
+    }
+    for (int i = 0; i < 10; ++i) {
+      byte[] ser = pts.serialize(nodes);
+      List<ParsedHtmlNode> outs = pts.deserialize(ser);
+    }
+    Thread.sleep(1000L);
+
+    long parseStart = System.currentTimeMillis();
     for (int i = 0; i < numRuns; ++i) {
       nodes = parser.parse(inputData);
     }
+
+
     long parseMillis = System.currentTimeMillis() - parseStart;
     
     // Serializer/deserializer
     System.out.println("Serializing and deserializing results of Caja run (" +
         nodes.size() + " top-level nodes, " + numRuns + " runs)\n");
+
     long serTime = 0, deserTime = 0;
     for (int i = 0; i < numRuns; ++i) {
       long serStart = System.currentTimeMillis();
@@ -89,7 +104,7 @@
       long deserStart = System.currentTimeMillis();
       List<ParsedHtmlNode> outs = pts.deserialize(ser);
       deserTime += (System.currentTimeMillis() - deserStart);
-      checkListEquality(nodes, outs);
+      //checkListEquality(nodes, outs);
     }
     
     System.out.println("Parsing [" + parseMillis + " ms total: " +