[Haskell-cafe] my knucleotide fast on 64 bit but extremely slow on 32 bit?

Don Stewart dons00 at gmail.com
Thu Mar 28 21:23:39 CET 2013


Int64 is emulated on 32 bit. So it is not as efficient by a long shot.

On Thursday, 28 March 2013, Branimir Maksimovic wrote:

> I have posted previous knucleotide program, it is fast on 64 bit but
> very slow on 32 bit.
> I cannot install 32 bit ghc to test it so I can only guess is that
> cause is use of Int64 for hash and HashMap array indexing.
> What bothers me is that it that much slower , and I guess
> that array indexing of 64 bit int where native index is 32 bit
> is culprit.
> Am I right? If I make Int index of array it will be fast on
> 32 bit platform too?
> I cannot imagine that hashing to 64 bit int is culprit rather
> array indexing as I guess that every array access
> requires indirect access on 32 bit platform?
>
> 64 bit :
>
> http://benchmarksgame.alioth.debian.org/u64q/program.php?test=knucleotide&lang=ghc&id=1
> 19.80 secs
> 32 bit:
>
> http://benchmarksgame.alioth.debian.org/u32q/program.php?test=knucleotide&lang=ghc&id=1
> 91.01 secs ;(
>
> I really like Haskell, but Im frustrated as how inpredictable it is.
> Im programming from 1983' but found Haskell as much more difficult
> to program efficiently than C++.
> In C++ whatever lousy program I write it performs decently,
> but not so in Haskell. It requires much deeper knowledge than
> c++.
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20130328/c341e610/attachment.htm>


More information about the Haskell-Cafe mailing list