ghc and signal processing
Jeremy Shaw
jeremy.shaw at lindows.com
Mon Feb 23 20:03:56 EST 2004
Hrm,
Okay, it seems that my problems maybe be due to using ghc 6.3.
Here are the results of running test under different compiler versions
(see end of message for code):
Athlon 600MHz + FreeBSD + GHC 6.0.1
real 0m0.414s
user 0m0.361s
sys 0m0.016s
Athlon 600MHz + FreeBSD + GHC 6.3 (built from CVS HEAD on Feb 15, 2004)
real 0m2.517s
user 0m2.289s
sys 0m0.069s
Pentium III 1.13GHz + Debian + GHC 6.2
real 0m0.305s
user 0m0.196s
sys 0m0.027s
Pentium III 1.13GHz + Debian + GHC 6.3 (built from CVS HEAD on Feb 1, 2004)
real 0m1.302s
user 0m1.196s
sys 0m0.044s
So it seems like maybe GHC 6.3's performance for this particular test
is around 3-5 slower?
Jeremy Shaw.
module Main where
import Data.Array
import Data.Array.IO
import System.IO
main = do h <- openFile "test.b" WriteMode
a <- newArray_ (1,1800000)
b <- mapArray id a
c <- mapArray id b
hPutArray h c 1800000
At Mon, 23 Feb 2004 13:37:45 -0800,
Mike Gunter wrote:
>
>
> Hmmm. With -O2 on GHC 6.2, I get 0.177s, 0.217s, and 0.348s for your
> three Haskell examples and 0.187s (with gcc -O2) for your C example.
> The output of -ddump-simpl for the looks perfect for the second
> Haskell example. My GHC seems to be doing a bang-up job here. What's
> wrong with yours? (For the third example GHC's code could be improved
> by additional inlining or hoisting of a constant array outside of the
> loop.)
>
> mike
>
More information about the Glasgow-haskell-users
mailing list