sic: > * Andrew Coppin <[EMAIL PROTECTED]> [070608 02:45]: > > Bayley, Alistair wrote: > > > > [[1]mailto:[EMAIL PROTECTED] 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 >
Due to a (now fixed in 6.6.1 I think) bug in GHC 6.6, -fexcess-precision *must* be inserted in a pragma. Did you do that? {-# OPTIONS -fexcess-precision #-} See the bug report here, http://hackage.haskell.org/trac/ghc/ticket/1138 -- Don _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe