Brian Hurt wrote:
The key idea of Cilk is that it's easier to deparallelize than it is
to parallelize, especially automatically. So the idea is that the
program is written incredibly parallel, with huge numbers of
microthreads, which are (on average) very cheap to spawn. The runtime
then deparallelizes the microthreads, running multiple microthreads
sequentially within a single real thread (a worker thread).
Microthreads that live their entire life within a single real thread
are cheap to spawn (as in "not much more expensive than a normal
function call" cheap).
That's so absurd, it might even work!
I quite like the concept though - rather than asking "what can we make
parallel?", you say "what should we do serially?" That sounds like an
easier question to answer...
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe