From: Marcus Lindblom (macke_at_[hidden])
Date: 2007-03-10 10:18:09
Peter Dimov wrote:
> As an aside, does anyone have a success story about active objects? I can't
> seem to grasp their significance; in particular, how are they supposed to
> scale to many cores/HW threads if every access is implicitly serialized?
I don't know if this applies directly, but I've recently looked at
Intel's Thread Building Blocks and I must say I'm quite impressed how
they've handled things. (It's free to download for evaluation, see
Their library is solely aimed at parallellizing cpu-limited algorithms
to many cores, by means of a task scheduler and some nifty
breath-first/depth-first evaluation schemes.
It's different from the concept of an 'active object' which may reside
on different threades/processes/cpus/machines/planets, but I think it
could be one direction to think of in terms of futures and how they
spawn recursively to create job objects that are handled by a
thread-pool (typically one thread per core).
The two problems are a bit different, but I just thought I should
mention it here as I liked it a lot and I think a boost-ish
implementation of something similar would be of great value to the world.
Boost list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk