Bagley shootout. Was: Lightningspeed haskell
Fri, 2 Mar 2001 00:12:30 -0800
A String is a [Char] and a Char is a heap object. So
a file represented as a string takes a massive 20 bytes/char
(12 for the cons cell, 8 for the Char cell). Then it's all sucked
through several functions.
It's entirely possible, though, that the biggest performance hit
is in the I/O itself. We'd be happy if anyone wanted to invesigate
| -----Original Message-----
| From: John Atwood [mailto:email@example.com]
| Sent: 02 March 2001 01:12
| To: Josef Svenningsson
| Cc: firstname.lastname@example.org
| Subject: Bagley shootout. Was: Lightningspeed haskell
| I notice that the reverse file program, while concise, is quite slow.
| The program in its entirety is:
| main = interact $ unlines . reverse . lines
| Any thoughts on why its time is 5.68 seconds, vs 3.56 for tcl, 2 for
| perl, 0.19 for gcc, 0.18 for ocaml; and how it might be sped
| up? Is the
| lack of speed all in the stdio I/O?
| Is there a way to tell which benchmarks have no haskell entry?
| John Atwood
| Josef Svenningsson wrote:
| > Hi all.
| > Some days ago someone posted this url:
| > http://www.bagley.org/~doug/shootout/
| > which is a page benchmarking a number of different languages and
| > compilers where ghc is one of them. Some benchmarks lacked a haskell
| > versions (and some still do) and so I decided to fill in
| some of the gaps.
| > One benchmark turned out to give pretty remarkable results. It's the
| > producer/consumer benchmark. I suggest you all take a look
| at it. The
| > haskell version is six (SIX!!!) times faster than the c
| version. Hey,
| > what's going on here? I would really like to hear some
| comments from our
| > dear implementors.
| > It should be noted that synchronisation is achieved by using
| > slightly different kinds of primitives. But still... six times...
| > I lift my hat of for the ghc-implementors.
| > /Josef
| > _______________________________________________
| > Glasgow-haskell-users mailing list
| > Glasgowemail@example.com
| > http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
| Glasgow-haskell-users mailing list