build-benchmark.xml revision 6:5a1b0714df0e
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. 5 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. 9 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). 15 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. 19 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=".."> 25 26 <target name="octane-init" depends="jar"> 27 <fileset id="octane-set" 28 dir="${octane-test-sys-prop.test.js.roots}" 29 excludes="${octane-test-sys-prop.test.js.exclude.list}"> 30 <include name="**/*.js"/> 31 </fileset> 32 <pathconvert pathsep=" " property="octane-tests" refid="octane-set"/> 33 <property name="extra-arg" value=""/> 34 </target> 35 36 <!-- box2d --> 37 <target name="box2d-init"> 38 <property name="octane-tests" value="${octane-test-sys-prop.test.js.roots}/box2d.js"/> 39 </target> 40 41 <target name="octane-box2d" depends="jar, box2d-init, octane-verbose"> 42 <antcall target="run-octane"/> 43 </target> 44 45 <target name="octane-box2d-v8" depends="jar, box2d-init, octane-verbose"> 46 <antcall target="run-octane-v8"/> 47 </target> 48 49 <target name="octane-box2d-rhino" depends="jar, box2d-init, octane-verbose"> 50 <antcall target="run-octane-rhino"/> 51 </target> 52 53 <!-- code-load --> 54 <target name="code-load-init"> 55 <property name="octane-tests" value="${octane-test-sys-prop.test.js.roots}/code-load.js"/> 56 </target> 57 58 <target name="octane-code-load" depends="jar, code-load-init, octane-verbose"> 59 <antcall target="run-octane"/> 60 </target> 61 62 <target name="octane-code-load-v8" depends="jar, code-load-init, octane-verbose"> 63 <antcall target="run-octane-v8"/> 64 </target> 65 66 <target name="octane-code-load-rhino" depends="jar, code-load-init, octane-verbose"> 67 <antcall target="run-octane-rhino"/> 68 </target> 69 70 <!-- crypto --> 71 <target name="crypto-init"> 72 <property name="octane-tests" value="${octane-test-sys-prop.test.js.roots}/crypto.js"/> 73 </target> 74 75 <target name="octane-crypto" depends="jar, crypto-init, octane-verbose"> 76 <antcall target="run-octane"/> 77 </target> 78 79 <target name="octane-crypto-v8" depends="jar, crypto-init, octane-verbose"> 80 <antcall target="run-octane-v8"/> 81 </target> 82 83 <target name="octane-crypto-rhino" depends="jar, crypto-init, octane-verbose"> 84 <antcall target="run-octane-rhino"/> 85 </target> 86 87 <!-- deltablue --> 88 <target name="deltablue-init"> 89 <property name="octane-tests" value="${octane-test-sys-prop.test.js.roots}/deltablue.js"/> 90 </target> 91 92 <target name="octane-deltablue" depends="jar, deltablue-init, octane-verbose"> 93 <antcall target="run-octane"/> 94 </target> 95 96 <target name="octane-deltablue-v8" depends="jar, deltablue-init, octane-verbose"> 97 <antcall target="run-octane-v8"/> 98 </target> 99 100 <target name="octane-deltablue-rhino" depends="jar, deltablue-init, octane-verbose"> 101 <antcall target="run-octane-rhino"/> 102 </target> 103 104 <!-- earley-boyer --> 105 <target name="earley-boyer-init"> 106 <property name="octane-tests" value="${octane-test-sys-prop.test.js.roots}/earley-boyer.js"/> 107 </target> 108 109 <target name="octane-earley-boyer" depends="jar, earley-boyer-init, octane-verbose"> 110 <antcall target="run-octane"/> 111 </target> 112 113 <target name="octane-earley-boyer-v8" depends="jar, earley-boyer-init, octane-verbose"> 114 <antcall target="run-octane-v8"/> 115 </target> 116 117 <target name="octane-earley-boyer-rhino" depends="jar, earley-boyer-init, octane-verbose"> 118 <antcall target="run-octane-rhino"/> 119 </target> 120 121 <!-- gbemu --> 122 <target name="gbemu-init"> 123 <property name="octane-tests" value="${octane-test-sys-prop.test.js.roots}/gbemu.js"/> 124 </target> 125 126 <target name="octane-gbemu" depends="jar, gbemu-init, octane-verbose"> 127 <antcall target="run-octane"/> 128 </target> 129 130 <target name="octane-gbemu-v8" depends="jar, gbemu-init, octane-verbose"> 131 <antcall target="run-octane-v8"/> 132 </target> 133 134 <target name="octane-gbemu-rhino" depends="jar, gbemu-init, octane-verbose"> 135 <antcall target="run-octane-rhino"/> 136 </target> 137 138 <!-- navier-stokes --> 139 <target name="navier-stokes-init"> 140 <property name="octane-tests" value="${octane-test-sys-prop.test.js.roots}/navier-stokes.js"/> 141 </target> 142 143 <target name="octane-navier-stokes" depends="jar, navier-stokes-init, octane-verbose"> 144 <antcall target="run-octane"/> 145 </target> 146 147 <target name="octane-navier-stokes-v8" depends="jar, navier-stokes-init, octane-verbose"> 148 <antcall target="run-octane-v8"/> 149 </target> 150 151 <target name="octane-navier-stokes-rhino" depends="jar, navier-stokes-init, octane-verbose"> 152 <antcall target="run-octane-rhino"/> 153 </target> 154 155 <!-- pdfjs --> 156 <target name="pdfjs-init"> 157 <property name="octane-tests" value="${octane-test-sys-prop.test.js.roots}/pdfjs.js"/> 158 </target> 159 160 <target name="octane-pdfjs" depends="jar, pdfjs-init, octane-verbose"> 161 <antcall target="run-octane"/> 162 </target> 163 164 <target name="octane-pdfjs-v8" depends="jar, pdfjs-init, octane-verbose"> 165 <antcall target="run-octane-v8"/> 166 </target> 167 168 <target name="octane-pdfjs-rhino" depends="jar, pdfjs-init, octane-verbose"> 169 <antcall target="run-octane-rhino"/> 170 </target> 171 172 <!-- raytrace --> 173 <target name="raytrace-init"> 174 <property name="octane-tests" value="${octane-test-sys-prop.test.js.roots}/raytrace.js"/> 175 </target> 176 177 <target name="octane-raytrace" depends="jar, raytrace-init, octane-verbose"> 178 <antcall target="run-octane"/> 179 </target> 180 181 <target name="octane-raytrace-v8" depends="jar, raytrace-init, octane-verbose"> 182 <antcall target="run-octane-v8"/> 183 </target> 184 185 <target name="octane-raytrace-rhino" depends="jar, raytrace-init, octane-verbose"> 186 <antcall target="run-octane-rhino"/> 187 </target> 188 189 <!-- regexp --> 190 <target name="regexp-init"> 191 <property name="octane-tests" value="${octane-test-sys-prop.test.js.roots}/regexp.js"/> 192 </target> 193 194 <target name="octane-regexp" depends="jar, regexp-init, octane-verbose"> 195 <antcall target="run-octane"/> 196 </target> 197 198 <target name="octane-regexp-octane-v8" depends="jar, regexp-init, octane-verbose"> 199 <antcall target="run-octane-v8"/> 200 </target> 201 202 <target name="octane-regexp-rhino" depends="jar, regexp-init, octane-verbose"> 203 <antcall target="run-octane-rhino"/> 204 </target> 205 206 207 <!-- splay --> 208 <target name="splay-init"> 209 <property name="octane-tests" value="${octane-test-sys-prop.test.js.roots}/splay.js"/> 210 </target> 211 212 <target name="octane-splay" depends="jar, splay-init, octane-verbose"> 213 <antcall target="run-octane"/> 214 </target> 215 216 <target name="octane-splay-v8" depends="jar, splay-init, octane-verbose"> 217 <antcall target="run-octane-v8"/> 218 </target> 219 220 <target name="octane-splay-rhino" depends="jar, splay-init, octane-verbose"> 221 <antcall target="run-octane-rhino"/> 222 </target> 223 224 <target name="octane-verbose"> 225 <property name="extra-arg" value="--verbose"/> 226 </target> 227 228 <!-- run octane benchmarks using Nashorn as runtime --> 229 <target name="octane" depends="octane-init"> 230 <antcall target="run-octane"/> 231 </target> 232 233 <!-- run octane benchmarks using octane as runtime --> 234 <target name="octane-v8" depends="octane-init"> 235 <antcall target="run-octane-v8"/> 236 </target> 237 238 <!-- run octane benchmarks using Rhino as runtime --> 239 <target name="octane-rhino" depends="octane-init"> 240 <antcall target="run-octane-rhino"/> 241 </target> 242 243 <target name="run-octane"> 244 <java classname="${nashorn.shell.tool}" 245 classpath="${run.test.classpath}" 246 fork="true" 247 dir="."> 248 <jvmarg line="${boot.class.path}"/> 249 <jvmarg line="${ext.class.path}"/> 250 <jvmarg line="${run.test.jvmargs.octane}"/> 251 <arg value="${octane-test-sys-prop.test.js.framework}"/> 252 <arg value="--"/> 253 <arg value="${octane-tests}"/> 254 <arg value="--runtime"/> 255 <arg value="Nashorn"/> 256 <arg value="--verbose"/> 257 <arg value="--iterations 8"/> 258 <arg value="${extra-arg}"/> 259 </java> 260 </target> 261 262 <target name="run-octane-v8"> 263 <exec executable="${v8.shell}"> 264 <arg value="${octane-test-sys-prop.test.js.framework}"/> 265 <arg value="--"/> 266 <arg value="${octane-tests}"/> 267 <arg value="--runtime"/> 268 <arg value="v8"/> 269 <arg value="--verbose"/> 270 <arg value="--iterations 8"/> 271 <arg value="${extra-arg}"/> 272 </exec> 273 </target> 274 275 <target name="run-octane-rhino"> 276 <java jar="${rhino.jar}" 277 classpath="${run.test.classpath}" 278 fork="true" 279 dir="."> 280 <jvmarg line="${boot.class.path}"/> 281 <jvmarg line="${run.test.jvmargs.octane}"/> 282 <arg value="${octane-test-sys-prop.test.js.framework}"/> 283 <arg value="${octane-tests}"/> 284 <arg value="--runtime"/> 285 <arg value="Rhino"/> 286 <arg value="--verbose"/> 287 <arg value="--iterations 8"/> 288 <arg value="${extra-arg}"/> 289 </java> 290 </target> 291 292 <!-- run octane with all known runtimes for comparison --> 293 <target name="octane-all" depends="octane, octane-v8, octane-rhino"> 294 <exec executable="${v8.shell}"> 295 <arg value="${octane-test-sys-prop.test.js.framework}"/> 296 <arg value="${octane-tests}/"/> 297 </exec> 298 </target> 299 300 <target name="sunspider-init" depends="jar"> 301 <fileset id="sunspider-set" 302 dir="${sunspider-test-sys-prop.test.js.roots}" 303 excludes="${sunspider-test-sys-prop.test.js.exclude.list}"> 304 <include name="**/*.js"/> 305 </fileset> 306 <pathconvert pathsep=" " property="sunspider-tests" refid="sunspider-set"/> 307 </target> 308 309 <!-- run sunspider with Nashorn --> 310 <target name="sunspider" depends="sunspider-init"> 311 <java classname="${nashorn.shell.tool}" 312 classpath="${run.test.classpath}" 313 fork="true" 314 dir="."> 315 <jvmarg line="${boot.class.path}"/> 316 <jvmarg line="${ext.class.path}"/> 317 <jvmarg line="${run.test.jvmargs}"/> 318 <arg value="-timezone=PST"/> 319 <arg value="--class-cache-size=50"/> 320 <arg value="${sunspider-test-sys-prop.test.js.framework}"/> 321 <arg value="--"/> 322 <arg value="${sunspider-tests}/"/> 323 </java> 324 </target> 325 326 <!-- run sunspider with v8 --> 327 <target name="sunspider-v8" depends="sunspider-init"> 328 <exec executable="${v8.shell}"> 329 <arg value="${sunspider-test-sys-prop.test.js.framework}"/> 330 <arg value="--"/> 331 <arg value="${sunspider-tests}/"/> 332 </exec> 333 </target> 334 335 <!-- run sunspider with Rhino --> 336 <target name="sunspider-rhino" depends="sunspider-init"> 337 <java jar="${rhino.jar}" 338 classpath="${run.test.classpath}" 339 fork="true" 340 dir="."> 341 <jvmarg line="${boot.class.path}"/> 342 <jvmarg line="${run.test.jvmargs}"/> 343 <arg value="${sunspider-test-sys-prop.test.js.framework}"/> 344 <arg value="${sunspider-tests}/"/> 345 </java> 346 </target> 347 348</project> 349