Intel Threading Building Blocks 3.0
Written by Harry Fairhead   
Friday, 21 May 2010 00:00

 

Banner

A new version of Intel Threading Building Blocks (TBB) was announced recently. Given how important it is to graduate from single-threaded applications to multi-threaded apps that make best use of multi-core processors we all need to take notice - even if you don't program in C++.

TBB is a parallel library for C++ available in both commercial and open source editions - same software, different licence.The new version now works with Visual Studio 2010 and can run on top of the Concurrency Runtime under Windows 7.

 

tbb

 

Many of the new features are due to the need to keep up with the moving target that is C++0x. The most recent update to the standard was produced in March 2010 and TBB makes use of the new features where appropriate. For example TBB uses proper implementation of some aspects of  thread exception handling if it is supported in the compiler and uses its old implementation if not. There are some minor changes that could break existing code but these are easy to fix.

The new version introduces the use of lambda expressions/functions (also new in C++0x) which have a natural affinity with parallelism because you so often have to reference a piece of code as if it was data to control its execution. Using lambda expressions doesn't add any new capabilities but it makes the code much easier to understand. The "pipeline" facility now has a strongly typed version parallel_pipeline which also allows lambdas. This means you can build a pipeline that returns a typed pointer using template parameters.

Other new features include a new associative container that can permits concurrent insertion and traversal with no visible locking needed. The task scheduler now supports fire and forget tasks, independent task scheduling for foreign threads. 

Also new, but not exactly an enhancement, is the TBB Design Pattern manual. This is a collection of design patterns in parallel programming using the TBB. Patterns include  Odd-Even Communication, Wavefront, Reduction, Divide and Conquer, GUI Thread, Non-Preemptive Priorities, Lazy Initialization and Reference Counting.

More information from: Intel Threading Building Blocks 3.0

 

Banner


CERN Celebrates 20 Years of World Wide Web
30/04/2013

Can you imagine not having the web at your fingertips? Or it  being so expensive that only big corporations and elite universities could afford it? An undertaking made 20 years ago led to the Wor [ ... ]



Nokia Asha A New Mobile SDK
10/05/2013

Nokia may have committed to Windows Phone 8, but it has just announced its new, less than $100, Asha phone plus a new SDK so that you can develop apps for it. 


More News

<ASIN:0596514808>

<ASIN:0470289627>

<ASIN:0123705916>

<ASIN:0750685395>

<ASIN:0596521537>

Last Updated ( Thursday, 20 May 2010 15:22 )
 
 

   
RSS feed of news items only
I Programmer News
Copyright © 2013 i-programmer.info. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.