test/examples/innerbench.js

Mon, 22 Sep 2014 11:31:51 -0700

author
asaha
date
Mon, 22 Sep 2014 11:31:51 -0700
changeset 1146
d0f0d7e5527e
parent 7
5a1b0714df0e
child 952
6d5471a497fb
child 962
ac62e33a99b0
permissions
-rw-r--r--

Added tag jdk8u31-b01 for changeset 6bf53bb6c969

jlaskey@3 1 /*
jlaskey@7 2 * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
jlaskey@3 3 *
jlaskey@3 4 * Redistribution and use in source and binary forms, with or without
jlaskey@3 5 * modification, are permitted provided that the following conditions
jlaskey@3 6 * are met:
jlaskey@3 7 *
jlaskey@3 8 * - Redistributions of source code must retain the above copyright
jlaskey@3 9 * notice, this list of conditions and the following disclaimer.
jlaskey@3 10 *
jlaskey@3 11 * - Redistributions in binary form must reproduce the above copyright
jlaskey@3 12 * notice, this list of conditions and the following disclaimer in the
jlaskey@3 13 * documentation and/or other materials provided with the distribution.
jlaskey@3 14 *
jlaskey@3 15 * - Neither the name of Oracle nor the names of its
jlaskey@3 16 * contributors may be used to endorse or promote products derived
jlaskey@3 17 * from this software without specific prior written permission.
jlaskey@3 18 *
jlaskey@3 19 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
jlaskey@3 20 * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
jlaskey@3 21 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
jlaskey@3 22 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
jlaskey@3 23 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
jlaskey@3 24 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
jlaskey@3 25 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
jlaskey@3 26 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
jlaskey@3 27 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
jlaskey@3 28 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
jlaskey@3 29 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
jlaskey@3 30 */
jlaskey@3 31
jlaskey@3 32 function bench() {
jlaskey@3 33 var N = 10000000;
jlaskey@3 34
jlaskey@3 35 function empty() {}
jlaskey@3 36
jlaskey@3 37 function outer1() {
jlaskey@3 38 function inner() {}
jlaskey@3 39 }
jlaskey@3 40
jlaskey@3 41 function outer2() {
jlaskey@3 42 function inner() {}
jlaskey@3 43 inner();
jlaskey@3 44 }
jlaskey@3 45
jlaskey@3 46 for (var i = 0, d = Date.now(); i < N; i++) {
jlaskey@3 47 empty();
jlaskey@3 48 }
jlaskey@3 49 print("empty :", Date.now() - d);
jlaskey@3 50 for (var i = 0, d = Date.now(); i < N; i++) {
jlaskey@3 51 outer1();
jlaskey@3 52 }
jlaskey@3 53 print("outer1:", Date.now() - d);
jlaskey@3 54 for (var i = 0, d = Date.now(); i < N; i++) {
jlaskey@3 55 outer2();
jlaskey@3 56 }
jlaskey@3 57 print("outer2:", Date.now() - d);
jlaskey@3 58 }
jlaskey@3 59 bench();
jlaskey@3 60

mercurial