Boost logo

Boost :

Subject: Re: [boost] [context/coroutine] split into two libs in trunk?!
From: Oliver Kowalke (oliver.kowalke_at_[hidden])
Date: 2012-04-13 12:28:40


Am 13.04.2012 18:05, schrieb Mathias Gaunard:
> AFAIK the HPX library, done by several people associated to Boost,
> uses code derived from the old Boost.Coroutine for context switching.
Boost.Coroutine from Giovanni uses ucontext_t on UNIX.

> Bryce Lelbach told me they didn't move to Boost.Context because it was
> slow and had significant scalability problems.

He never told that to me and I'm pretty sure that boost.context is much
faster than boost.coroutine (from Giovanni) because the last one uses
ucontext facility which does system calls in its jump functions -
boost.context, e.g. fcontext_t and its related functions does not
(implemented in assembler)!
You can also take a look at the documentation, section performance - it
shows that fcontext outperforms ucontext by factor 10.

Oliver


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