make/build-benchmark.xml

Tue, 02 Jul 2013 15:01:38 +0200

author
lagergren
date
Tue, 02 Jul 2013 15:01:38 +0200
changeset 396
69ec02d12a31
parent 298
e6193dcfe36c
child 562
740b1133f1b6
permissions
-rw-r--r--

Merge

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <!--
     3  Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
     4  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     6  This code is free software; you can redistribute it and/or modify it
     7  under the terms of the GNU General Public License version 2 only, as
     8  published by the Free Software Foundation.
    10  This code is distributed in the hope that it will be useful, but WITHOUT
    11  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
    12  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
    13  version 2 for more details (a copy is included in the LICENSE file that
    14  accompanied this code).
    16  You should have received a copy of the GNU General Public License version
    17  2 along with this work; if not, write to the Free Software Foundation,
    18  Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
    20  Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
    21  or visit www.oracle.com if you need additional information or have any
    22  questions.
    23 -->
    24 <project name="nashorn-benchmarks" default="all" basedir="..">
    26   <target name="octane-init" depends="jar">
    27     <property name="octane-tests" value="box2d code-load crypto deltablue earley-boyer gbemu navier-stokes pdfjs raytrace regexp richards splay"/>
    28   </target>
    30   <!-- ignore benchmarks where rhino crashes -->
    31   <target name="octane-init-rhino" depends="jar">
    32     <property name="octane-tests" value="box2d code-load crypto deltablue earley-boyer gbemu navier-stokes raytrace regexp richards splay"/>
    33   </target>
    35   <!-- box2d -->
    36   <target name="octane-box2d" depends="jar">
    37     <antcall target="run-octane">
    38       <param name="octane-tests" value="box2d"/>
    39     </antcall>
    40   </target>
    42   <target name="octane-box2d-v8" depends="jar">
    43     <antcall target="run-octane-v8">
    44       <param name="octane-tests" value="box2d"/>
    45     </antcall>
    46   </target>
    48   <target name="octane-box2d-rhino" depends="jar">
    49     <antcall target="run-octane-rhino">
    50       <param name="octane-tests" value="box2d"/>
    51     </antcall>
    52   </target>
    55   <!-- code-load -->  
    56   <target name="octane-code-load" depends="jar">
    57     <antcall target="run-octane">
    58       <param name="octane-tests" value="code-load"/>
    59     </antcall>
    60   </target>
    62   <target name="octane-code-load-v8" depends="jar">
    63     <antcall target="run-octane-v8">
    64       <param name="octane-tests" value="code-load"/>
    65     </antcall>
    66   </target>
    68   <target name="octane-code-load-rhino" depends="jar">
    69     <antcall target="run-octane-rhino">
    70       <param name="octane-tests" value="code-load"/>
    71     </antcall>
    72   </target>
    75   <!-- crypto -->
    76   <target name="octane-crypto" depends="jar">
    77     <antcall target="run-octane">
    78       <param name="octane-tests" value="crypto"/>
    79     </antcall>
    80   </target>
    82   <target name="octane-crypto-v8" depends="jar">
    83     <antcall target="run-octane-v8">
    84       <param name="octane-tests" value="crypto"/>
    85     </antcall>
    86   </target>
    88   <target name="octane-crypto-rhino" depends="jar">
    89     <antcall target="run-octane-rhino">
    90       <param name="octane-tests" value="crypto"/>
    91     </antcall>
    92   </target>
    95   <!-- deltablue -->
    96   <target name="octane-deltablue" depends="jar">
    97     <antcall target="run-octane">
    98       <param name="octane-tests" value="deltablue"/>
    99     </antcall>
   100   </target>
   102   <target name="octane-deltablue-v8" depends="jar">
   103     <antcall target="run-octane-v8">
   104       <param name="octane-tests" value="deltablue"/>
   105     </antcall>
   106   </target>
   108   <target name="octane-deltablue-rhino" depends="jar">
   109     <antcall target="run-octane-rhino">
   110       <param name="octane-tests" value="deltablue"/>
   111     </antcall>
   112   </target>
   115   <!-- earley-boyer -->
   116   <target name="octane-earley-boyer" depends="jar">
   117     <antcall target="run-octane">
   118       <param name="octane-tests" value="earley-boyer"/>
   119     </antcall>
   120   </target>
   122   <target name="octane-earley-boyer-v8" depends="jar">
   123     <antcall target="run-octane-v8">
   124       <param name="octane-tests" value="earley-boyer"/>
   125     </antcall>
   126   </target>
   128   <target name="octane-earley-boyer-rhino" depends="jar">
   129     <antcall target="run-octane-rhino">
   130       <param name="octane-tests" value="earley-boyer"/>
   131     </antcall>
   132   </target>
   135   <!-- gbemu -->  
   136   <target name="octane-gbemu" depends="jar">
   137     <antcall target="run-octane">
   138       <param name="octane-tests" value="gbemu"/>
   139     </antcall>
   140   </target>
   142   <target name="octane-gbemu-v8" depends="jar">
   143     <antcall target="run-octane-v8">
   144       <param name="octane-tests" value="gbemu"/>
   145     </antcall>
   146   </target>
   148   <target name="octane-gbemu-rhino" depends="jar">
   149     <antcall target="run-octane-rhino">
   150       <param name="octane-tests" value="gbemu"/>
   151     </antcall>
   152   </target>
   155   <!-- mandreel -->  
   156   <target name="octane-mandreel" depends="jar">
   157     <antcall target="run-octane">
   158       <param name="octane-tests" value="mandreel"/>
   159     </antcall>
   160   </target>
   162   <target name="octane-mandreel-v8" depends="jar">
   163     <antcall target="run-octane-v8">
   164       <param name="octane-tests" value="mandreel"/>
   165     </antcall>
   166   </target>
   168   <target name="octane-mandreel-rhino" depends="jar">
   169     <antcall target="run-octane-rhino">
   170       <param name="octane-tests" value="mandreel"/>
   171     </antcall>
   172   </target>
   175   <!-- navier-stokes -->
   176   <target name="octane-navier-stokes" depends="jar">
   177     <antcall target="run-octane">
   178       <param name="octane-tests" value="navier-stokes"/>
   179     </antcall>
   180   </target>
   182   <target name="octane-navier-stokes-v8" depends="jar">
   183     <antcall target="run-octane-v8">
   184       <param name="octane-tests" value="navier-stokes"/>
   185     </antcall>
   186   </target>
   188   <target name="octane-navier-stokes-rhino" depends="jar">
   189     <antcall target="run-octane-rhino">
   190       <param name="octane-tests" value="navier-stokes"/>
   191     </antcall>
   192   </target>
   195   <!-- pdfjs -->  
   196   <target name="octane-pdfjs" depends="jar">
   197     <antcall target="run-octane">
   198       <param name="octane-tests" value="pdfjs"/>
   199     </antcall>
   200   </target>
   202   <target name="octane-pdfjs-v8" depends="jar">
   203     <antcall target="run-octane-v8">
   204       <param name="octane-tests" value="pdfjs"/>
   205     </antcall>
   206   </target>
   208   <target name="octane-pdfjs-rhino" depends="jar">
   209     <antcall target="run-octane-rhino">
   210       <param name="octane-tests" value="pdfjs"/>
   211     </antcall>
   212   </target>
   215   <!-- raytrace -->
   216   <target name="octane-raytrace" depends="jar">
   217     <antcall target="run-octane">
   218       <param name="octane-tests" value="raytrace"/>
   219     </antcall>
   220   </target>
   222   <target name="octane-raytrace-v8" depends="jar">
   223     <antcall target="run-octane-v8">
   224       <param name="octane-tests" value="raytrace"/>
   225     </antcall>
   226   </target>
   228   <target name="octane-raytrace-rhino" depends="jar">
   229     <antcall target="run-octane-rhino">
   230       <param name="octane-tests" value="raytrace"/>
   231     </antcall>
   232   </target>
   235   <!-- regexp -->
   236   <target name="octane-regexp" depends="jar">
   237     <antcall target="run-octane">
   238       <param name="octane-tests" value="regexp"/>
   239     </antcall>
   240   </target>
   242   <target name="octane-regexp-octane-v8" depends="jar">
   243     <antcall target="run-octane-v8">
   244       <param name="octane-tests" value="regexp"/>
   245     </antcall>
   246   </target>
   248   <target name="octane-regexp-rhino" depends="jar">
   249     <antcall target="run-octane-rhino">
   250       <param name="octane-tests" value="regexp"/>
   251     </antcall>
   252   </target>
   255   <!-- richards -->
   256   <target name="octane-richards" depends="jar">
   257     <antcall target="run-octane">
   258       <param name="octane-tests" value="richards"/>
   259     </antcall>
   260   </target>
   262   <target name="octane-richards-v8" depends="jar">
   263     <antcall target="run-octane-v8">
   264       <param name="octane-tests" value="richards"/>
   265     </antcall>
   266   </target>
   268   <target name="octane-richards-rhino" depends="jar">
   269     <antcall target="run-octane-rhino">
   270       <param name="octane-tests" value="richards"/>
   271     </antcall>
   272   </target>
   275   <!-- splay -->
   276   <target name="octane-splay" depends="jar">
   277     <antcall target="run-octane">
   278       <param name="octane-tests" value="splay"/>
   279     </antcall>
   280   </target>
   282   <target name="octane-splay-v8" depends="jar">
   283     <antcall target="run-octane-v8">
   284       <param name="octane-tests" value="splay"/>
   285     </antcall>
   286   </target>
   288   <target name="octane-splay-rhino" depends="jar">
   289     <antcall target="run-octane-rhino">
   290       <param name="octane-tests" value="splay"/>
   291     </antcall>
   292   </target>
   294   <!-- run octane benchmarks in a single process  -->
   295   <target name="octane-single-process" depends="octane-init">
   296     <antcall target="run-octane"/>
   297   </target>
   299   <!-- mandreel excluded due to OOM -->
   300   <target name="octane-separate-process" depends=
   301      "octane-box2d, octane-code-load, octane-crypto, 
   302       octane-deltablue, octane-earley-boyer, octane-gbemu,
   303       octane-navier-stokes, octane-pdfjs, octane-raytrace, 
   304       octane-regexp, octane-richards, octane-splay"/>
   306   <target name="--single-process" unless="${octane-test-sys-prop.separate.process}">
   307     <antcall target="octane-single-process"/>
   308   </target>
   309   <target name="--separate-process" if="${octane-test-sys-prop.separate.process}">
   310     <antcall target="octane-separate-process"/>
   311   </target>
   313   <!-- run 'octane' in single or separate processes based on config -->
   314   <target name="octane" depends="init, --single-process, --separate-process"/>
   316   <!-- run octane benchmarks using octane as runtime -->
   317   <target name="octane-v8" depends="octane-init">
   318     <antcall target="run-octane-v8"/>
   319   </target>
   321   <!-- run octane benchmarks using Rhino as runtime -->
   322   <target name="octane-rhino" depends="octane-init-rhino">
   323     <antcall target="run-octane-rhino"/>
   324   </target>
   326   <target name="run-octane">
   327     <java classname="${nashorn.shell.tool}"
   328           classpath="${run.test.classpath}"
   329           fork="true"
   330           dir=".">
   331       <jvmarg line="${ext.class.path}"/>
   332       <jvmarg line="${run.test.jvmargs.octane}"/>
   333       <arg value="${octane-test-sys-prop.test.js.framework}"/>
   334       <arg value="--"/>
   335       <arg value="${octane-tests}"/>
   336       <arg value="--runtime"/>
   337       <arg value="Nashorn"/>
   338       <arg value="--verbose"/>
   339       <arg value="--iterations 8"/>
   340     </java>
   341   </target>
   343   <target name="run-octane-v8">
   344     <exec executable="${v8.shell}">
   345       <arg value="${octane-test-sys-prop.test.js.framework}"/>
   346       <arg value="--"/>
   347       <arg value="${octane-tests}"/>      
   348       <arg value="--runtime"/>
   349       <arg value="v8"/>
   350       <arg value="--verbose"/>
   351       <arg value="--iterations 8"/>
   352     </exec>
   353   </target>
   355   <target name="run-octane-rhino">
   356     <java jar="${rhino.jar}"
   357           classpath="${run.test.classpath}"
   358           fork="true"
   359           dir=".">
   360       <jvmarg line="${run.test.jvmargs.octane}"/>
   361       <arg value="${octane-test-sys-prop.test.js.framework}"/>
   362       <arg value="${octane-tests}"/>
   363       <arg value="--runtime"/>
   364       <arg value="Rhino"/>
   365       <arg value="--verbose"/>
   366       <arg value="--iterations 8"/>
   367     </java>
   368   </target>
   370   <!-- run octane with all known runtimes for comparison -->
   371   <target name="octane-all" depends="octane, octane-v8, octane-rhino">
   372     <exec executable="${v8.shell}">
   373       <arg value="${octane-test-sys-prop.test.js.framework}"/>
   374       <arg value="${octane-tests}/"/>
   375     </exec>
   376   </target>
   378   <target name="sunspider-init" depends="jar">
   379     <fileset id="sunspider-set"
   380 	     dir="${sunspider-test-sys-prop.test.js.roots}"
   381 	     excludes="${sunspider-test-sys-prop.test.js.exclude.list}">
   382       <include name="**/*.js"/>
   383     </fileset>
   384     <pathconvert pathsep=" " property="sunspider-tests" refid="sunspider-set"/>
   385   </target>
   387   <!-- run sunspider with Nashorn -->
   388   <target name="sunspider" depends="sunspider-init">
   389     <java classname="${nashorn.shell.tool}"
   390           classpath="${run.test.classpath}"
   391           fork="true"
   392           dir=".">
   393       <jvmarg line="${ext.class.path}"/>
   394       <jvmarg line="${run.test.jvmargs}"/>
   395       <arg value="-timezone=PST"/>
   396       <arg value="--class-cache-size=50"/>
   397       <arg value="${sunspider-test-sys-prop.test.js.framework}"/>
   398       <arg value="--"/>
   399       <arg value="${sunspider-tests}/"/>
   400     </java>
   401   </target>
   403   <!-- run sunspider with v8 -->
   404   <target name="sunspider-v8" depends="sunspider-init">
   405     <exec executable="${v8.shell}">
   406       <arg value="${sunspider-test-sys-prop.test.js.framework}"/>
   407       <arg value="--"/>
   408       <arg value="${sunspider-tests}/"/>
   409     </exec>
   410   </target>
   412   <!-- run sunspider with Rhino -->
   413   <target name="sunspider-rhino" depends="sunspider-init">
   414     <java jar="${rhino.jar}"
   415           classpath="${run.test.classpath}"
   416           fork="true"
   417           dir=".">
   418       <jvmarg line="${run.test.jvmargs}"/>
   419       <arg value="${sunspider-test-sys-prop.test.js.framework}"/>
   420       <arg value="${sunspider-tests}/"/>
   421     </java>
   422   </target>
   424 </project>

mercurial