www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Re: Things I Learned from ACCU 2010

Walter Bright Wrote:

 bearophile wrote:
 Walter Bright:
 OCaml has a global interpreter lock which explains its behavior. Russell
 didn't know why the Haskell behavior was so bad. He allowed that it was
 possible he was misusing it.

You have just the illusion to have learned something about this. Trying to read too much from this single example is very wrong. A single benchmark, written by a person not expert in the language, means nearly nothing. You need at least a suite of good benchmarks, written by people that know the respective languages. And even then, you have just an idea of the situation.

Fair enough, but in order to dismiss the results I'd need to know *why* the Haskell version failed so badly, and why such a straightforward attempt at parallelism is the wrong solution for Haskell. You shouldn't have to be an expert in a language that is supposedly good at parallelism in order to get good results from it. (Russel may or not be an expert, but he is certainly not a novice at FP or parallelism.) Basically, I'd welcome an explanatory riposte to Russel's results.

This a failure to read the manual, and arguably bad defaults by GHC here. At the haskell parMap versions work fine when you compile with -threaded, and run with: +RTS -N -- NUBIE
Apr 24 2010