[Haskell-cafe] Haskell version of ray tracer code is much slower
than the original ML
Jon Harrop
jon at ffconsultancy.com
Fri Jun 22 22:28:53 EDT 2007
On Friday 22 June 2007 19:54:16 Philip Armstrong wrote:
> On Fri, Jun 22, 2007 at 10:11:27PM +0400, Bulat Ziganshin wrote:
> >btw, *their* measurement said that ocaml is 7% faster :)
>
> Indeed. The gcc-4.0 compilied binary runs at about 15s IIRC, but it's
> still much better than 7% faster than the ocaml binary.
What architecture, platform, compiler versions and compile lines are you
using?
On my 2x 2.2GHz Athlon64 running x64 Debian I now get:
GHC 6.6.1: 26.5s ghc -funbox-strict-fields -O3 ray.hs -o ray
OCaml 3.10.0: 14.158s ocamlopt -inline 1000 ray.ml -o ray
g++ 4.1.3: 8.056s g++ -O3 -ffast-math ray.cpp -o ray
Also, the benchmarks and results that I cited before are more up to date than
the ones you're using. In particular, you might be interested in these faster
versions:
http://www.ffconsultancy.com/languages/ray_tracer/code/5/ray.ml
http://www.ffconsultancy.com/languages/ray_tracer/code/5/ray.cpp
For "./ray 6 512", I get:
OCaml: 3.140s ocamlopt -inline 1000 ray.ml -o ray
C++: 2.970s g++ -O3 -ffast-math ray.cpp -o ray
--
Dr Jon D Harrop, Flying Frog Consultancy Ltd.
The OCaml Journal
http://www.ffconsultancy.com/products/ocaml_journal/?e
More information about the Haskell-Cafe
mailing list