Boost logo

Boost :

Subject: Re: [boost] [threadpool] new version - fork/join (recursive/fibers)
From: vicente.botet (vicente.botet_at_[hidden])
Date: 2008-11-04 14:06:11


----- Original Message -----
From: <k-oli_at_[hidden]>
To: <boost_at_[hidden]>
Sent: Tuesday, November 04, 2008 7:58 PM
Subject: [boost] [threadpool] new version - fork/join (recursive/fibers)

>
> 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.

Yep. This is a good new.

> 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).

This is not surprising.

> 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.

Why not. I was not really attached to this solution.

Thanks,

Vicente


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