[plt-dev] Parallel Futures Release

From: James Swaine (james.swaine at gmail.com)
Date: Mon Dec 7 12:31:01 EST 2009

I'm pleased to announce the initial release of parallel futures, a
construct for fine-grained parallelism in PLT. Roughly speaking, a
programmer passes a thunk to 'future' and it gets run in parallel.
That "roughly" holds a few gotchas, partly because we're just getting
started and partly due to the technique we're using. See the
documentation for more details:


If you've got a multicore machine where you can't keep the cores busy
or your office/machine room is a bit cold, try this program:

#lang scheme
(require scheme/futures)
(define (loop) (loop))
 (for/list ([i (in-range 0 (processor-count))])
  (future loop)))

Note that you have to build mzscheme with futures; it isn't enabled by
default, but see the docs above for how to do that. Beyond the above,
we've also gotten a few parallel kernels going and are seeing good
scalability up to 8 cores (the biggest machine we have around for the
time being).

Many thanks to Matthew, Robby, Kevin, and Peter Dinda, without whom this
release wouldn't have been possible.

Feedback welcome!

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/dev/archive/attachments/20091207/2680c443/attachment.html>

Posted on the dev mailing list.