summaryrefslogtreecommitdiff
path: root/benchmark/run.js
blob: 4bb2f5c4dbd4c57944458a2a72afa5e423bb88c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
var benchmarks = [ "static_http_server.js" 
                 , "timers.js"
                 , "process_loop.js"
                 ];

var benchmark_dir = node.path.dirname(__filename);

function exec (script, callback) {
  var command = ARGV[0] + " " + node.path.join(benchmark_dir, script);
  var start = new Date();
  var process = node.createProcess(command);
  process.addListener("exit", function (code) {
    var elapsed = new Date() - start;
    callback(elapsed, code);
  });
}

function runNext (i) {
  if (i >= benchmarks.length) return;
  print(benchmarks[i] + ": ");
  exec(benchmarks[i], function (elapsed, code) {
    if (code != 0) {
      puts("ERROR  ");
    }
    puts(elapsed);
    runNext(i+1);
  });
};
runNext(0);