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