ynd / mona-clojure

Computer Paints Mona Lisa

This URL has Read+Write access

mona-clojure / bench / benchmark.py
100644 20 lines (14 sloc) 0.52 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# Clojure: 10.55348
# Java: 2.58524 sans / 12.02628 avec color creation
 
import os, sys, commands, re
from itertools import repeat
 
def get_run_time(cmd):
  return float(re.findall(r"0m(.*?)s", commands.getoutput("time %s"% cmd))[0])
 
def average(l):
  return sum(l) / len(l)
 
def benchmark(cmd):
  return average(map(get_run_time, repeat(cmd, 25)))
 
os.chdir("clojure")
print "Clojure:", benchmark("java -cp ../../clojure.jar clojure.lang.Repl fitness.clj")
 
os.chdir("../java")
print "Java:", benchmark("java Fitness")