On Wed, Apr 23, 2008 at 5:01 PM, Tillmann Vogt <[EMAIL PROTECTED]>
wrote:

> Hi,
>
> I am currently experimenting with parallelizing C-programs. I have
> therefore written a matrix vector multiplication example that needs 13
> seconds to run (5 seconds with OpenMP). Because I like Haskell I did the
> same in this language, but it takes about 134 seconds. Why is it so slow?
> Does someone have an idea?
>
>
Yes, in the C version you use unboxed arrays, in the Haskell version you use
a linked list of linked lists. Naturally the latter will take up more space,
require more work to index, and will thrash the cache quite a bit.
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to