TBB
 
Welcome Guest | Login | Register
 

Welcome to Threading Building Blocks.org!

Intel® Threading Building Blocks (Intel TBB) offers a rich and complete approach to expressing parallelism in a C++ program. It is a library that helps you take advantage of multi-core processor performance without having to be a threading expert. Intel TBB is not just a threads-replacement library. It represents a higher-level, task-based parallelism that abstracts platform details and threading mechanisms for scalability and performance. 

September 8, 2011: Intel® Threading Building Blocks 4.0 Available Today!

Intel(R) TBB 4.0 introduces several new features:
Flow Graph: API Extends applicability of IntelR TBB to event-driven/reactive programming models
Concurrent Unordered Set: Thread-safe container to store and access user objects
Memory Pools: Enables greater flexibility and performance by getting thread-safe and scalable object allocation
Generic GCC* Atomics Support: Library portability enables development of IntelR TBB-based solutions on a broader range of platforms
Task and task group priorities: Provides ability to specify task execution order based on three priority levels (low, normal, and high)
Concurrent Priority Queue: A queue that allows pulling data out in a user-defined priority order

Questions, feedback, and contributions on the new features are always welcomed. 
Download Intel TBB 4.0 today! 

More information about the release:

Intel TBB 4.0 is already available on MTL machines

 April 4, 2011: OPEN CASCADE and Intel TBB

OPEN CASCADE, a CAD/CAE software vendor and solution provider, recently adopted Intel TBB to enable their technology platform for multicore processors.  They chose Intel TBB for its parallel algorithms, scalable memory allocator, and ease of integration.  Open CASCADE Technology public version 6.5 was released in March 2011, making the Intel TBB version available to their entire open source community.  

March 25, 2011:  Announcing the Task Priority CP Feature

Today we are happy to introduce the latest CP features: Task, and Task Group, Priority.  This set of features is available today in Intel TBB 3.0 Update 6.

December 23, 2010: Announcing the Graph Community Preview (CP) Feature

Following on the recent introduction of the first CP feature, the concurrent_priority_queue, the Intel TBB team introduced a new feature today in Intel TBB 3.0 Update 5 -- the Graph interface.  The Graph interface is the culmination of years of work to meet the needs of developers who would like to utilize Intel TBB for irregular problem types like those that use events or message passing.  We are particularly interested in community feedback on whether the graph is helping produce more elegant and high performing implementations in real world applications.  As always, community questions, feedback, and contributions are welcome.

December 8, 2010: Announcing Community Preview (CP) Features

The Intel TBB team is happy to introduce the use of Community Preview (CP) features into Intel TBB today.  CP features are a great way for Intel to show new and interesting capabilities to our community and customers before they have been finalized.  As part of our commitment to openness with all of the Intel® Parallel Building Blocks technologies, we want our users to know what we are working on to make Intel TBB better.  We also want to gain your feedback on upcoming features so that we can make sure we continue to meet your needs today and in the future.

These features are fully tested but are not officially supported or necessarily fully documented.  Given the early nature of these features, we don’t guarantee that they won’t be removed or modified in ways that break compatibility with pre-production versions.  In addition, they are turned off by default so they won’t impact your application unless you want to give them a try.  We look forward to hearing your response in the forum to our first CP feature, the Concurrent Priority Queue, and to the use of CP features in general.

May 4, 2010: Intel® Threading Building Blocks 3.0 Available Today 

The new commercial aligned open source version of TBB 3.0 is available for download now.  If you need the commercial version of TBB 3.0 it is available for evaluation and purchase today as well.  You can learn more about the release in Terry Wilmarth's and James Reinders' blogs on the Intel Software Network.

Latest News

PC Games Hardware: Ric Broadhurst of Creative Assembly talks about using TBB in Napoleon: Total War - Better performance coming with the Empire add-on? 

Intel® Software Network: In Optimizing Without Breaking a Sweat authors John O'Neill, Alex Wells, and Matt Walsh show how to use TBB 2.2's automatic memory allocator replacement to get great performance improvements in DreamWorks Animation's rendering, animation, and special effects applications.

 Check out who is having success using TBB here.  If you have something you would like to say about TBB let us know by emailing us at tbb-users@lists.sourceforge.net

More

Blogs

Scalable Memory Pools: community preview feature
"In TBB 4.0, we introduced new community preview feature (CPF) – the scalable memory pools. See the TBB Reference Manual (D.4) for formal and detailed description. In this blog, we will present them ..."
Posted December 19, 2011 05:05:33 by Anton Malakhov (Intel)

My 5 Favorite New Intel® Software Development Product Features of 2011
"It's been a big year for us in the Intel Developer Products Division. We released Intel® Cluster Studio XE and Intel® Parallel Studio XE Service Pack 1. We continued to plan and design our products ..."
Posted December 16, 2011 10:41:39 by Shannon Cepeda (Intel)

Open Parallel: Optimizing Web Performance with TBB
"Open Parallel is a research and development company that focuses on parallel programming and multicore development. We are a bunch of highly skilled geeks from various backgrounds that work together o..."
Posted November 16, 2011 14:39:36 by Nicolas Erdody

More

Forums

concurrent_monitor bug
"There is a bug in concurrent_monitor.cpp/h when compiled with TBB_USE_ASSERT=1 TBB_USE_DEBUG=0There is an assertion in the concurrent_monitor destructor which verify the waitset is empty, but in four..."
Posted January 27, 2012 08:06:07 by

test_semaphore not build/run in Makefile.test. Intentionally ?
"In Makefile.test (tbb40_20111130) there is not a rule to build test_semaphore but there is something suspicious at line 151: semaphore.$(OBJ)which doesn't make sense. Perhaps the content of this l..."
Posted January 27, 2012 07:15:08 by

Tasks Cancellation (What for?)
"Hello everyone,TBB offers tasks cancelation in its model, so a TBB developper can cancel tasks during runtime.What I would like to know is the reason behind adding this cancelation model to TBB. What ..."
Posted January 26, 2012 09:57:27 by

More

Why TBB

For developers, the clear benefits of Threading Building Blocks are:

  1. TBB significantly reduces the number of lines of code required to develop multithreaded applications;
  2. TBB significantly reduces the programming complexity for developing multithreaded applications (by abstracting many details of thread management);
  3. TBB's task manager automatically analyzes the system the software is running on, chooses the optimal number of threads, and performs load balancing that spreads out the work evenly across all processor cores;
  4. As a result, TBB threaded applications automatically scale to fully utilize all available processing cores on whatever computer they run on -- including future systems that will have many more cores than are available (or affordable) today.

If you have experience developing multithreaded C++ software (new applications, or conversion of legacy applications for operation on multi-processor/multi-core systems), you owe it to yourself to experiment with Threading Building Blocks: try recoding a few sections of software you've threaded using traditional thread libraries, and notice the difference.

The links at the right provide access to TBB resources and means for you to participate in the Threading Building Blocks community. If you have a question, feel free to post it in the TBB forums. Use the top navigation bar to access TBB's documentation and download the stable or development releases. The articles below also provide a good introduction to TBB.

Thanks for visiting ThreadingBuildingBlocks.org. We hope this is just the beginning of your interest in TBB and your engagement in the Threading Building Blocks Open Source community.

Search 

Page & Feed options
Print | Email to a friend | Support | RSS

Bookmark This
 Digg this   del.icio.us

Resources

       Buy Now 
Intel TBB  Jolt Productivity Award

   

On which operating system(s) do you use TBB?