On Sep 3, 2011, at 18:19 , Benedikt Meurer wrote: > I'll push the i386 version once cleaned up and integrated with the approach > implemented for the amd64 version now.
The i386 version is also fully functional now, and our current prototype is available from the ocamlnat-jit branch from my "ocaml-experimental" repository at: https://github.com/bmeurer/ocaml-experimental/tree/ocamlnat-jit > It should be noted that there's still some room left for optimizations (i.e. > use short jumps whenever possible, etc.), but the results so far are already > quite promising: The new ocamlnat beats both the old ocamlnat as well as the > byte code toplevel in every benchmark I've tried. I'll prepare a detailed > comparison when time permits. I did a preliminary comparison today, results are available at: http://ps.informatik.uni-siegen.de/~meurer/tmp/ocamlnat-benchmark-20110914.pdf The results are given as speedup compared to the OCaml 3.12.1 byte code toplevel. "OCamlNat/jit" is ours, "OCamlNat/ext" is the ocamlnat thing that silently ships with OCaml 3.12.1, and "OCamlJIT2" is my previous byte code JITter. Time was measured as combined user+system time for the toplevel process plus all child processes. As you can see, we achieved speedups of up to 100 times faster than the byte code toplevel (which is in part related to the fact that llvm-gcc is the default compiler with OS X Lion, and thereby disables the register assignment optimizations for the byte code interpreter). greets, Benedikt -- Caml-list mailing list. Subscription management and archives: https://sympa-roc.inria.fr/wws/info/caml-list Beginner's list: http://groups.yahoo.com/group/ocaml_beginners Bug reports: http://caml.inria.fr/bin/caml-bugs
