Boost logo

Boost :

Subject: Re: [boost] c++11 and gcc 4.7
From: Leo Goodstadt (bunbun68_at_[hidden])
Date: 2011-12-07 11:24:34


>
> From: Bruce Adams <tortoise_74_at_[hidden]>
> Date: Tue, 6 Dec 2011 19:08:56 +0000 (GMT)
>
> Hi,
> I am attempting to do a cost benefit analysis to justify adopting the
> subset of C++11 that is supported by gcc 4.7.
> As threads are one of the biggest features of c++11, I may be asked to
> justify just boost.thread vs
> gcc 4.7 + boost.thread.

You may also wish to consider using a higher level threading library on top
of std::thread / boost::thread. We have been using Intel Threading Building
Blocks (http://threadingbuildingblocks.org/) for a while now, and it seems
to live very happily alongside Boost. TBB means that you don't have to roll
your own thread pools, or adjust the parallelism each time your programme
is run. It is also a very thin layer in terms of efficiency.

The modern trend across many programming languages also seems to move away
from using (manual) synchronisation primitives whenever possible (just as
"raw" new and delete has become rare in c++ over the past 20 years). TBB
allows complex pipelines to be supported quite naturally in terms of a data
flow. My only reservation is that it requires dynamic linking, which is not
always desirable or even possible.

Finally, the extra level of abstraction in TBB probably means that the onus
on supporting varying standards of c++ 11 conformance falls on Intel and
not you or your company!

Leo


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