[Haskell-cafe] Haskell vs Clean (speed comparison)
gwern0 at gmail.com
Sun May 3 14:29:37 EDT 2009
On Sun, May 3, 2009 at 2:24 PM, Daniel Carrera
<daniel.carrera at theingots.org> wrote:
> I think the mail server may have been acting up earlier. I sent this to
> Haskell-beginners, but it more properly belongs here.
> I found something interesting. "General wisdom" is that Clean (or OCaml) is
> faster than Haskell. The claim is often followed by a link to the Debian
> shootout. But on closer inspection, I question this conclusion. The Debian
> shoot out actually has four sets of benchmarks:
> 1) Intel 32-bit one core.
> 2) Intel 32-bit quad-core.
> 3) Intel 64-bit one core.
> 4) Intel 64-bit quad-core.
> It turns out that Clean is only faster for (1). For the others, Haskell is
> faster. Here I compare Haskell, Clean, OCaml, Lisp SBCL, C# Mono and Fortran
> because they are all in the same ball mark:
> 32-bit sing core : Lisp, Fortran, Clean, Haskell, C# Mono.
> 32-bit quad-core : Haskell, C# Mono, Lisp, Clean, Fortran.
> 64-bit sing core : Fortran, OCaml, Haskell, Clean, C# Mono, Lisp.
> 64-bit quad-core : Haskell, OCaml, Lisp, C# Mono, Fortran, Clean.
> * The order is "fast language first".
> * There are no results for OCaml for 32-bit.
> * "Lisp" is "List SCBL" whatever that is.
> Tentative conclusions:
> 1) Haskell makes very good use of multiple cores. It smokes Clean.
> 2) For single core, they are neck and neck. Whether Clean is faster depends
> non the architecture.
> What do you think?
Perhaps it's just that no one has parallelized the Clean programs?
Haskellers seem to care about the shootout programs much more than
eg. I randomly looked at Mandelbrot on .
I can't really read Clean, but it certainly looks as if it's making no
use of concurrency at all, while the Haskell one most certainly is.
More information about the Haskell-Cafe