
Bulat Ziganshin wrote:
numerical speed is poor in ghc 6.4, according to my tests. it's 10-20 times worse than of gcc. afair, the mandelbrot benchmark of Great Language Shootout proves this - despite all optimization attempts, GHC entry is still 5-10 times slower than gcc/ocaml/clean ones
We average 1.3x slower than C in the shootout. Thanks to Don Stewart for the following stats... The numerical floating-point-intensive benchmarks: mandelbrot 2.7x C (Clean 1.7x, OCaml 2.4x, C++ 2.6x) n-body 2.1x C (Clean 0.9x, OCaml 1.3x, C++ 1.4x) http://shootout.alioth.debian.org/gp4/benchmark.php?test=mandelbrot&lang=all http://shootout.alioth.debian.org/gp4/benchmark.php?test=nbody&lang=all So we're still only 2-3 times slower than C on these benchmarks, and we know how to improve them. In other cases, for example some integer/floating math, we beat GCC: partial-sums: http://shootout.alioth.debian.org/gp4/benchmark.php?test=partialsums&lang=all The full list, Haskell vs. C: 0.1x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=chameneos&lang=all 0.1x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=message&lang=all 0.1x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=regexdna&lang=all 0.5x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=binarytrees&lang=all 0.7x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=nsieve&lang=all 0.9x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=nsievebits&lang=all 0.9x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=partialsums&lang=all 1.3x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=recursive&lang=all 1.6x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=pidigits&lang=all 1.8x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=fasta&lang=all 1.8x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=nbody&lang=all 2.3x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=spectralnorm&lang=all * 2.5x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=sumcol&lang=all 2.7x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=mandelbrot&lang=all * 3.2x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=fannkuch&lang=all * 11.0x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=revcomp&lang=all * 22.0x C http://shootout.alioth.debian.org/gp4/benchmark.php?test=knucleotide&lang=all * Known, or expected, to improve under Data.ByteString Cheers, Simon