[Haskell-cafe] haskell version of fractal benchmark
Scott Cruzen
sic at lerp.com
Sat Jun 9 02:25:05 EDT 2007
* Andrew Coppin <andrewcoppin at btinternet.com> [070608 02:45]:
> Bayley, Alistair wrote:
>
> [[1]mailto:haskell-cafe-bounces at haskell.org] On Behalf Of Andrew Coppin
>
> Donald Bruce Stewart wrote:
>
> Some things to remember using Doubles:
>
> * {-# OPTIONS -fexcess-precision #-}
> * -fvia-C
> * -fbang-patterns
> * -optc-O2 -optc-mfpmath=sse -optc-msse2
> * -optc-march=pentium4
>
> 1. What do all those things do?
> 2. Is the effect actually that large?
>
> Large? Depends what you mean by large, but adding a few flags to get
> just a 10-20% speedup isn't to be ignored:
>
> Sure - if it really is 10-20%. (And not, say, 0.001 - 0.002%.)
A single data point for all of this, I have a program that calculates:
P^1_i = S_i/sum_k S_k
P^m_i = sum_{k!=i} P^1_k*P^m-1_i(S_~k)
Here's timings for the different options:
options run time compile time
none 46.401 3.136
-O 5.033 4.906
-O2 4.967 6.755
-O2 -fexcess-precision 3.710 6.396
all listed options 3.602 6.344
Results with -fexcess-precision are very insignificantly different
(1.0 e-7).
More information about the Haskell-Cafe
mailing list