Boost logo

Boost :

Subject: [boost] [threadpool] new version - fork/join (recursive/fibers)
From: k-oli_at_[hidden]
Date: 2008-11-04 13:58:52


Hello,

v13:
http://www.boostpro.com/vault/index.php?action=downloadfile&filename=boost-threadpool.v13.tar.gz&directory=Concurrent%20Programming&

after the discussion yesterday I've modified the code. Now the pool can be
configured (second template argument of tp::pool) to use recursive invokation
of tasks or fibers in order to enable fork/join semantics.

I've found that the recursive invokation is more than two times faster than
using fibers (see examples recursive_fibonacci_recursive_task.cpp and
recursive_fibonacci_with_fibers.cpp).
The code using fibers sometimes raises an assertion in ~mutex() (used in
work-stealing queue).
For this reason and following the discussions I think I'll remove the support
for fibers from threadpool.

regards,
OPliver


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk