Title: [223956] trunk
Revision
223956
Author
[email protected]
Date
2017-10-25 09:58:57 -0700 (Wed, 25 Oct 2017)

Log Message

Support the TailBench9000 benchmark in run-jsc-benchmarks
https://bugs.webkit.org/show_bug.cgi?id=178451

Reviewed by Saam Barati.

PerformanceTests:

The separation between the definition of the benchmarks (in merge-sort.js and n-body.js) and their loops (in *-run.js)
was causing trouble since the load of the js files only succeeded from the same directory. So I chose to merge them, following
the example of the other benchmarks.

* TailBench9000/merge-sort-run.js: Removed.
* TailBench9000/merge-sort.js:
* TailBench9000/n-body-run.js: Removed.
* TailBench9000/n-body.js:

Tools:

* Scripts/run-jsc-benchmarks:

Modified Paths

Removed Paths

Diff

Modified: trunk/PerformanceTests/ChangeLog (223955 => 223956)


--- trunk/PerformanceTests/ChangeLog	2017-10-25 16:38:14 UTC (rev 223955)
+++ trunk/PerformanceTests/ChangeLog	2017-10-25 16:58:57 UTC (rev 223956)
@@ -1,3 +1,19 @@
+2017-10-25  Robin Morisset  <[email protected]>
+
+        Support the TailBench9000 benchmark in run-jsc-benchmarks
+        https://bugs.webkit.org/show_bug.cgi?id=178451
+
+        Reviewed by Saam Barati.
+
+        The separation between the definition of the benchmarks (in merge-sort.js and n-body.js) and their loops (in *-run.js)
+        was causing trouble since the load of the js files only succeeded from the same directory. So I chose to merge them, following
+        the example of the other benchmarks.
+
+        * TailBench9000/merge-sort-run.js: Removed.
+        * TailBench9000/merge-sort.js:
+        * TailBench9000/n-body-run.js: Removed.
+        * TailBench9000/n-body.js:
+
 2017-10-19  Michael Catanzaro  <[email protected]>
 
         -Wsign-compare triggered by MallocBench

Deleted: trunk/PerformanceTests/TailBench9000/merge-sort-run.js (223955 => 223956)


--- trunk/PerformanceTests/TailBench9000/merge-sort-run.js	2017-10-25 16:38:14 UTC (rev 223955)
+++ trunk/PerformanceTests/TailBench9000/merge-sort-run.js	2017-10-25 16:58:57 UTC (rev 223956)
@@ -1,4 +0,0 @@
-load("merge-sort.js");
-
-for (var i = 0; i < 3000; ++i)
-    TEST_mergeSort();

Modified: trunk/PerformanceTests/TailBench9000/merge-sort.js (223955 => 223956)


--- trunk/PerformanceTests/TailBench9000/merge-sort.js	2017-10-25 16:38:14 UTC (rev 223955)
+++ trunk/PerformanceTests/TailBench9000/merge-sort.js	2017-10-25 16:58:57 UTC (rev 223956)
@@ -152,3 +152,6 @@
     
     test(0);
 }
+
+for (var i = 0; i < 3000; ++i)
+    TEST_mergeSort();

Deleted: trunk/PerformanceTests/TailBench9000/n-body-run.js (223955 => 223956)


--- trunk/PerformanceTests/TailBench9000/n-body-run.js	2017-10-25 16:38:14 UTC (rev 223955)
+++ trunk/PerformanceTests/TailBench9000/n-body-run.js	2017-10-25 16:58:57 UTC (rev 223956)
@@ -1,4 +0,0 @@
-load("n-body.js");
-
-for (var i = 0; i < 300; ++i)
-    TEST_nBody();

Modified: trunk/PerformanceTests/TailBench9000/n-body.js (223955 => 223956)


--- trunk/PerformanceTests/TailBench9000/n-body.js	2017-10-25 16:38:14 UTC (rev 223955)
+++ trunk/PerformanceTests/TailBench9000/n-body.js	2017-10-25 16:58:57 UTC (rev 223956)
@@ -235,3 +235,6 @@
     if (ret != expected)
         throw "ERROR: bad result: expected " + expected + " but got " + ret;
 }
+
+for (var i = 0; i < 300; ++i)
+    TEST_nBody();

Modified: trunk/Tools/ChangeLog (223955 => 223956)


--- trunk/Tools/ChangeLog	2017-10-25 16:38:14 UTC (rev 223955)
+++ trunk/Tools/ChangeLog	2017-10-25 16:58:57 UTC (rev 223956)
@@ -1,3 +1,12 @@
+2017-10-25  Robin Morisset  <[email protected]>
+
+        Support the TailBench9000 benchmark in run-jsc-benchmarks
+        https://bugs.webkit.org/show_bug.cgi?id=178451
+
+        Reviewed by Saam Barati.
+
+        * Scripts/run-jsc-benchmarks:
+
 2017-10-25  Adrian Perez de Castro  <[email protected]>
 
         [WPE] Remove GLib API functions which use Cairo

Modified: trunk/Tools/Scripts/run-jsc-benchmarks (223955 => 223956)


--- trunk/Tools/Scripts/run-jsc-benchmarks	2017-10-25 16:38:14 UTC (rev 223955)
+++ trunk/Tools/Scripts/run-jsc-benchmarks	2017-10-25 16:58:57 UTC (rev 223956)
@@ -48,6 +48,7 @@
 SUNSPIDER_PATH = PERFORMANCETESTS_PATH + "SunSpider" + "tests" + "sunspider-1.0"
 LONGSPIDER_PATH = PERFORMANCETESTS_PATH + "LongSpider"
 V8_PATH = PERFORMANCETESTS_PATH + "SunSpider" + "tests" + "v8-v6"
+TAILBENCH_PATH = PERFORMANCETESTS_PATH + "TailBench9000"
 MICROBENCHMARKS_PATH = OPENSOURCE_PATH + "JSTests" + "microbenchmarks"
 OCTANE_WRAPPER_PATH = PERFORMANCETESTS_PATH + "Octane" + "wrappers"
 JSBENCH_PATH = PERFORMANCETESTS_PATH + "JSBench"
@@ -226,6 +227,7 @@
 $includeOctane=true
 $includeCompressionBench = true
 $includeSixSpeed = true
+$includeTailBench = true
 $measureGC=false
 $benchmarkPattern=nil
 $verbosity=0
@@ -317,6 +319,7 @@
   puts "--browsermark-js     Only run browsermark-js."
   puts "--browsermark-dom    Only run browsermark-dom."
   puts "--octane             Only run Octane."
+  puts "--tail-bench         Only run TailBench"
   puts "--compression-bench  Only run compression bench"
   puts "                     The default is to run all benchmarks. The above options can"
   puts "                     be combined to run any subset (so --sunspider --dsp will run"
@@ -1624,6 +1627,18 @@
   end
 end
 
+class TailBenchBenchmark
+  include Benchmark
+
+  def initialize(name)
+    @name = name
+  end
+
+  def emitRunCode(plan)
+    emitBenchRunCode(fullname, plan, SingleFileTimedBenchmarkParameters.new(ensureFile("TailBench-#{@name}", "#{TAILBENCH_PATH}/#{@name}.js")))
+  end
+end
+
 class MicrobenchmarksBenchmark
   include Benchmark
   
@@ -2671,6 +2686,7 @@
       $includeOctane = false
       $includeCompressionBench = false
       $includeSixSpeed = false
+      $includeTailBench = false;
       $sawBenchOptions = true
     end
   end
@@ -2696,6 +2712,7 @@
                  ['--octane', GetoptLong::NO_ARGUMENT],
                  ['--compression-bench', GetoptLong::NO_ARGUMENT],
                  ['--six-speed', GetoptLong::NO_ARGUMENT],
+                 ['--tail-bench', GetoptLong::NO_ARGUMENT],
                  ['--benchmarks', GetoptLong::REQUIRED_ARGUMENT],
                  ['--measure-gc', GetoptLong::OPTIONAL_ARGUMENT],
                  ['--force-vm-kind', GetoptLong::REQUIRED_ARGUMENT],
@@ -2775,6 +2792,9 @@
     when '--js-bench'
       resetBenchOptionsIfNecessary
       $includeJSBench = true
+    when '--tail-bench'
+      resetBenchOptionsIfNecessary
+      $includeTailBench = true
     when '--microbenchmarks'
       resetBenchOptionsIfNecessary
       $includeMicrobenchmarks = true
@@ -3015,7 +3035,13 @@
     | nameAndMode |
     JSBENCH.add JSBenchBenchmark.new(*nameAndMode)
   }
-  
+
+  TAILBENCH = BenchmarkSuite.new("TailBench", :geometricMean, 0)
+  ["n-body", "merge-sort"].each {
+    | name |
+    TAILBENCH.add TailBenchBenchmark.new(name);
+  }
+
   MICROBENCHMARKS = BenchmarkSuite.new("Microbenchmarks", :geometricMean, 0)
   Dir.foreach(MICROBENCHMARKS_PATH) {
     | filename |
@@ -3154,10 +3180,14 @@
     end
   end
   
+  if $includeTailBench and not TAILBENCH.empty?
+    $suites << TAILBENCH
+  end
+
   if $includeMicrobenchmarks and not MICROBENCHMARKS.empty?
     $suites << MICROBENCHMARKS
   end
-  
+
   if $includeAsmBench and not ASMBENCH.empty?
     if ASMBENCH_PATH
       $suites << ASMBENCH
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to